我试图使用c# 4.0编译我的excel插件,并在Visual Studio中构建我的项目时开始遇到这个问题。重要的是要告诉你,我以前从来没有遇到过这个问题。什么会导致这种情况发生?


当前回答

删除DLL(错误发生的地方)并重新构建解决方案解决了我的问题。谢谢

其他回答

如果您更改了程序集版本或复制了错误中声明的托管库的不同版本,则以前编译的文件也可能引用了错误的版本。一个“重建所有”(或删除你的“bin”和“obj”文件夹在前面的评论中提到)应该解决这个问题。

当我遇到这个问题时,我通过关闭“启用ClickOnce安全设置”来解决它。

菜单:项目|“项目名称”属性…|安全选项卡|“启用ClickOnce安全设置”复选框。

这里有一个不同的方法来解决这个问题:

右键单击项目并选择“卸载项目”选项。您将注意到您的项目变得不可用。 右键单击不可用项目并选择“Edit”选项。 向下滚动到包含所有资源标记的“< ItemGroup >”标记。 现在转到已经显示在错误列表中的引用,您将注意到它使用了单个标记(即< reference Include="assemble_name_here, Version=0.0.0.0, Culture=neutral" / >)。 更改为如下所示:

.

<Reference Include="assemble_name_here, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL" >
    < Private > True < / Private >
    < HintPath > path_here\assemble_name_here.dll < / HintPath >
< / Reference >

保存您的更改,再次右键单击不可用的项目,然后单击“重新加载项目”选项,然后构建。

我也遇到了一些问题,我所要做的就是删除导致错误的.dll(可以在参考中找到),并重新添加它。

效果非常好。

当我在更新WindowsAPICodePack后遇到这种情况时,我只是重新构建了解决方案。

构建——>重建方案