VS 2010:打开包含System.Windows.Interactivity的项目的XAML文件时出现异常

4
我的问题如下:我在我的WPF项目(.NET 4,VS2010)中添加了一个对程序集“System.Windows.Interactivity”的引用,以实现一种行为。整个解决方案都可以构建和运行。作为行为实现的所需功能正常工作。
但是,只要我打开一个XAML文件(只显示XAML代码,不显示设计器),就会在错误窗口中出现两个异常:
第一个异常: “在“SomeFile.xaml”上抛出了System.IO.FileLoadException: 无法加载文件或程序集'System.Windows.Interactivity,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中之一的依赖项。操作不受支持。(来自HRESULT的异常:0x80131515)。”
第二个异常: “无法加载文件或程序集'System.Windows.Interactivity,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中之一的依赖项。操作不受支持。(来自HRESULT的异常:0x80131515)”
即使我打开的XAML文件不包含新行为,这些异常也会出现。尽管存在这些异常,但解决方案仍然可以构建和运行。如果关闭XAML文件,则异常消失。
一位用户在 http://connect.microsoft.com/VisualStudio/feedback/details/648819/visual-studio-2010-silverlight-designer-crash 中描述了类似的问题。但是,这是针对SL4的。
我该如何消除这些异常? 在这里出了什么问题?
谢谢, Florian

这可能是Visual Studio 2010中的一个错误,类似于您提到的那个。您是否向微软报告了此问题? - Bernard
我没有向微软报告这个问题,但我想这样做。在今天早上提交这个问题之前,我启动了Visual Studio。令人惊讶的是,异常不再存在了。我完全不知道发生了什么。唯一改变的是今天安装了5个安全更新。我不知道这个是否解决了我的问题。也许有人可以确认这种行为? - Florian
2个回答

3
我知道这是一篇比较老的帖子,但我今晚花了几个小时来解决这个完全相同的错误。让我疯狂的是,大约6个月前,对我来说这个解决方案非常好用,然后我把它交给了我的客户,并将其检入到VSS中。他们把稍微修改过的代码库压缩成一个文件给我返回, 这导致Intellisense在XAML文件内无法工作。
最终为我解决问题的是一个我从未遇到过的问题。我浏览了System.Windows.Interactivity.dll文件的物理位置,在底部的"安全"部分下发现了这个小提示:“该文件来自其他计算机,可能已被阻止以帮助保护此计算机。”
这个信息旁边有一个“取消阻止”按钮。 我点击了这个按钮,重新加载了我的项目,错误立即消失,Intellisense也立即开始在我的XAML文件内工作。

1
我遇到了同样的问题。在一个日期之后,它停止工作了。当我检查system.windows.interactivity.dll文件属性时,我发现打开方式为NUnit。然后我想起我最近安装了NUnit。我只是改变了VS选择器的打开方式(也设置为始终如此),重新启动了VS。耶...异常消失了....
不确定打开方式如何影响VS IDE。但是它又开始工作了...回到正轨 :D

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