0

我收到 2 个不同的编译错误,但在我们的解决方案中的多个项目中重复出现。该解决方案已从 VS 2010 升级到 VS 2012。该解决方案在本地构建良好并且运行无错误。

  1. “类型 (xxx) 是在未引用的程序集中定义的。您必须添加对程序集 'Blah, blah, blah..., ...' 的引用”

  2. “捕获或抛出的类型必须从 System.Exception 派生”

第二组错误似乎无关紧要,因为 try catch 块“ex”是问题,但在整个解决方案/项目中并不一致。它可能是第一个错误导致的级联问题。

谢谢

4

2 回答 2

0

对于有问题的引用,请检查以确保您引用的是 csproj(项目引用),而不是构建服务器上可能存在或不存在的二进制文件。我以前见过人们以某种​​方式在 bin\Debug 文件夹中获得对 .dll 的引用,当您尝试在另一台 bin\Debug 不存在的机器上构建它时,它当然会失败。

注意:可能有更好的方法,但是当我想检查我的引用时,我在解决方案资源管理器中右键单击项目并卸载它,然后右键单击并编辑它并直接检查 XML。

于 2013-11-06T04:16:18.937 回答
0

对于“捕获或抛出的类型必须从 System.Exception 派生”,看起来您编写了一个不继承 System.Exception 的用户定义异常。您可以参考以下链接以获取可能的解决方案

http://www.codeproject.com/Questions/457402/The-type-caught-or-throw-must-be-derived-from-Sys

于 2013-11-06T05:01:46.987 回答