我有一个引用SOAP Web服务的ASP.NET 4 Web应用程序。我的项目中对此Web服务有一个(老式的)Web引用。当我在IDE中进行编译/构建时,我没有遇到任何问题,并且Intellisense和类查看器都向我表明VS知道什么是什么以及在哪里可以找到它。
但是,当我运行解决方案时,出现此错误:
旧的CS0234错误(类型或 namespace '<...>'不存在...)。 Intellisense要求有所不同。
我的Web应用程序集称为NovaWeb
,我的Web引用集称为WS3
。我可以看到我的Reference.cs文件包含以下内容:
namespace NovaWeb.WS3 {
最佳答案
我通常不是一个回答自己问题的人。但是,这个问题已经开放了一个多月,没有任何答案。它有很多意见,这使我想知道其他人是否可能有同样的问题。自从我终于找到了解决方案之后,在Microsoft的一些直接支持的帮助下,我认为我应该记录我的解决方案,以防它帮助下一个人迷失此错误。
因此,事实证明,Web服务是解决此问题的红人。问题的真正症结在于与引用类型有关的运行时CS0234错误。正如我发现的困难方式一样,它也可能表现为运行时CS0103错误。
我在问题中提到我找到了解决方法。解决方法最终停止了工作,我对此项目一无所获。我联系了Microsoft寻求支持,并在获得源代码四天后,他们给了我解决方案。
问题与目标平台的编译器配置有关。
由于过去在台式机上部署多程序集应用程序时遭受的痛苦,我习惯于将构建配置从Any Platform
更改为x86
。
显然,这可能会使您对ASP.NET Web应用程序的编译感到困惑。在我看来,这听起来像是Visual Studio的错误,但是,解决我的运行时错误的方法是转到“解决方案属性”(不是项目属性),并为构建目标选择Any Platform
。
我希望这可以节省一些麻烦。如果有人对为什么这不是VS错误或幕后情况有合理的解释,我很想听到它,并保证会为您带来麻烦!
https://stackoverflow.com/questions/7732626/
相关文章:
compiler-construction - lex 使用来自 lex.yy.c 文件的 flex
php - 使用PHP的exec()函数(或类似函数),如何显示终端错误输出?
compiler-errors - nant 构建文件使用 nant 0.86 而不是 0.91 a
java - Java编译时错误: reached end of file while parsin
java - 编译时出现一个或多个错误的NetBeans项目
objective-c - 尽管导入了正确的 header ,但使用自定义类的编译器错误
objective-c - UIAlertView dismissWithClickedButton