【发布时间】:2013-10-08 17:11:48
【问题描述】:
非常简单但相当令人沮丧。我(不幸的是,我无法更改它)我的项目中有一个库,它在MyCompany.System 命名空间中声明了它的类。在向我的其他库添加服务引用后,我在自动生成的代码中遇到数百个错误,因为 System.* .NET 命名空间都被解析为 MyCompany.System.* 命名空间。
通过编辑自动生成的代码并将global:: 添加到对System.* 的所有引用,可以轻松解决此问题。令人困惑的是,为什么一些自动生成的代码已经有了,而一些/大多数没有。我无法在 VS2012 中找到任何选项来强制 WSDL 自动附加 global::。
如果有的话,我有什么选择?
【问题讨论】:
-
当您添加 Web 服务引用时,VS2012 有时会要求生成代码的命名空间。在那里提供一个与现有名称不冲突的名称空间。
-
它确实要求这样做,但随后 VS 使用默认命名空间作为后缀。换句话说,提供
MyService结果MyCompany.MyService。不过这是需要的 - 在项目的命名空间中生成代码非常好。
标签: c# wcf web-services wsdl