Visual Studio 2010错误:类型宇宙无法解析程序集。

5
我将一个最初在Visual Studio 2008中创建的WPF项目加载到了Visual Studio 2010中。转换过程很顺利,但在某些XAML文件中,VS2010设计器会抛出几个与项目引用相关的错误,包括以下内容:
System.Reflection.Adds.UnresolvedAssemblyException
类型宇宙无法解析程序集:GalaSoft.MvvmLight,Version=3.0.0.31869,Culture=neutral,PublicKeyToken=3e875cdb3903c512。
这个程序集引用在Expression Blend 4设计器中完全正常,但在VS2010中却不行。
我可以成功构建和运行解决方案。
我的解决方案针对.Net Framework 3.5 SP1。
3个回答

9

我不太确定您是否遇到了我曾经遇到的同样问题,但是我一直在使用Ninject .dll时都会出现类型宇宙错误。我通过在提取之前"解除封锁"zip文件来解决了这个问题。我认为这只影响Vista和Win 7开发机器,但值得一试。上周我发布了一篇博客文章,详细介绍了错误和解决方案。请向下滚动到"被阻塞的木头人"部分。


有趣。这可能是我的问题的根源。通过更新到.NET 4,我成功让消息消失了,但如果以后再遇到第三方库的话,我会尝试解除阻止。 - dthrasher
1
我遇到了这个问题,我使用的是Windows 7,“解除阻止”对我有用,谢谢!+1 - Aaron

4
检查您正在引用哪个版本的MVVM Light组件。
当您安装MVVM Light Toolkit二进制文件时,您会得到单独的WPF 3.5和WPF 4版本。您可以在以下位置找到WPF 4组件(假设默认安装位置):

c:\Program Files\Laurent Bugnion (GalaSoft)\Mvvm Light Toolkit\Binaries\WPF4


请注意:本文中出现的html标签不应被删除。

我刚注意到你的项目目标是 .NET 3.5,所以这可能不是适合你的正确解决方案。 - Matt Casto
这是一个不错的故障排除提示,但它并没有解决我的问题。不过还是要给你点赞! - dthrasher

0
我找到了一个解决方法,但我并不满意。如果我将项目的目标框架设置从“.NET Framework 3.5”更改为“.NET Framework 4 Client Profile”,设计师就可以正常工作。但我宁愿不更改我的目标框架来获得设计师支持!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接