wpf - 运行 Visual Studio 安装项目安装的应用程序时出现 Microsoft.Bcl.AsyncInterfaces 错误(在 CSVHelper 方法中)
问题描述
我有一个 WPF 应用程序,它读取CSVHelper
我使用安装的 CSV 文件NuGet
。这是项目、系统等版本信息。
Microsoft Windows 7 专业版 6.1.7601 Service Pack 1 Build 7601
Microsoft Visual Studio 社区 2019 版本 16.4.5
NuGet 包管理器 5.4.0
WPF 项目目标框架:.NET Framework 4.7.2
CSVHelper 版本:15.0.5
CSV 阅读器方法很简单;读取文件并将其放入列表中。没有什么花哨。我将在底部链接整个项目,以便您可以下载并尝试一下。
当我运行在其中一个Release
或Debug
构建中生成的可执行文件时,它们工作正常。他们读取文件,将内容放入列表中,然后显示DataGrid
就好了。下一步,我创建了一个标准Visual Studio Setup
项目,并创建了一个msi
安装程序,用于在我的 PC 中安装应用程序。
但是,当我运行该可执行文件(位于我的 Program Files 目录中)时,应用程序会引发异常。这是异常消息和堆栈跟踪。
Could not load file or assembly 'Microsoft.Bcl.AsyncInterfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context. (Exception from HRESULT: 0x80131058)
at ReadCSVTest.MainWindow.ReadPeopleList(String path, List`1& people, String& msg)
at ReadCSVTest.MainWindow..ctor()
由于错误说无法加载程序集Microsoft.Bcl.AsyncInterfaces
,我从 NuGet 中添加了它并再次运行所有内容,但我仍然收到错误消息。这里有什么问题?这是什么意思Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context.
?为什么我只有在运行安装项目安装的可执行文件时才会出现这个异常?
请从这里下载整个项目。
解决方案
就像将来任何人都会遇到同样的问题一样;正如琼斯在评论中建议的那样,将两个库中的每一个降级到以下版本为我解决了这个问题。
CsvHelper ==> 12.3.2
和
Microsoft.Bcl.AsyncInterfaces ==> 1.0.0
推荐阅读
- python-3.x - 使用 bash 脚本在子目录中运行机器人框架测试
- scipy - 使用单个 GPU 时的内存分配
- java - selenium java 为 xlink:href 属性加载图像
- elasticsearch - 什么时候在 Lucene 中应用删除
- python - 允许用户管理电子邮件的频率?- Python 批量邮件程序
- python - 模块“时间”没有属性“时钟”
- r - R循环遍历子文件夹
- python - 即使满足条件,如果语句未评估为 True
- node.js - 如何即时获取模型参考nestjs mongoose
- angular - 无法加载 npm\ng,因为在此系统上禁用了运行脚本