运行Visual Studio安装程序项目安装的应用程序时,Microsoft.Bcl.AsyncInterfaces错误(在CSVHelper方法中]

问题描述 投票:0回答:1

我有一个WPF应用程序,该应用程序使用我使用CSVHelper安装的NuGet读取CSV文件。这是项目,系统等版本信息。

Microsoft Windows 7 Professional版本6.1.7601 Service Pack 1构建7601

Microsoft Visual Studio Community 2019版本16.4.5

NuGet软件包管理器5.4.0

WPF项目目标框架:.NET Framework 4.7.2

CSVHelper版本:15.0.5

CSV阅读器方法很简单;读取文件并将其放在列表中。没有什么花哨。我将在底部链接整个项目,以便您可以下载并尝试使用。

[当我运行ReleaseDebug版本的可执行文件时,它们可以正常工作。他们读取文件,将内容放在列表中,然后在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.是什么意思?为什么我只运行安装程序安装的可执行文件时出现此异常?

请从HERE下载整个项目。

wpf visual-studio setup-project csvhelper base-class-library
1个回答
0
投票

将来任何人都会遇到相同的问题;正如琼斯在评论中建议的那样,将这两个库中的每一个降级到以下版本都为我解决了这个问题。

CsvHelper ==> 12.3.2

Microsoft.Bcl.AsyncInterfaces ==> 1.0.0
© www.soinside.com 2019 - 2024. All rights reserved.