.Net框架不兼容问题

use*_*246 7 .net c#

我有一个针对.Net framework 3.5版本的C#应用​​程序.安装.Net framework 3.5时,二进制文件工作正常.但是它给了.Net 4.0一些不兼容的问题

我看到以下异常:

在Method:InitializeComponent行中捕获异常:0列:0异常:无法加载文件或程序集'WindowsFormsIntegration,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一.该系统找不到指定的文件.

Jus*_*tin 3

我认为解决此问题所需的所有信息都已发布在评论中,但总结一下:

您真正需要的信息位于已发布的异常中(强调我的):

无法加载文件或程序集“WindowsFormsIntegration,版本=3.0.0.0”

它尝试加载 .Net 3.0 版本,WindowsFormsIntegration.dll但找不到该文件(或其依赖项之一),这可能是因为客户端计算机上未安装 .Net 3.0 框架。请注意,.Net v4.0 框架独立于以前版本的 .Net 框架 - 即使存在 .Net 框架 v4.0,也不能保证 .Net 框架 v3.0 在计算机上可用。

如果您安装 .Net Framework 版本 3.0,那么您的程序应该可以再次运行(除非出现其他问题),但实际上,如果您的目标是 .Net 4.0 框架,您应该引用 .Net 4.0 版本WindowsFormsIntegration.dll。只需删除现有引用并添加另一个对 .Net 4.0 版本的引用即可。

注意: “特定版本”属性是一个编译器时设置,即使 Visual Studio 无法访问正确的版本,它也可以在运行时进行构建,但是此设置不起作用 - 必须存在程序集的正确版本。请参阅关于 VS2005 中引用的程序集您需要了解的内容