我正在连接到一个Web服务。当生成类时,它创建两个相同的属性,一个具有System.CodeDom.Compiler.GeneratedCodeAttribute属性“System.Xml”,另一个具有System.CodeDom.Compiler.GeneratedCodeAttribute属性“System.Runtime.Serialization”。 ”
自动生成类的示例:
[System.CodeDom.Compiler.GeneratedCodeAttribute( “System.Runtime.Serialization”, “4.0.0.0”)] [System.Runtime.Serialization.DataContractAttribute(名称= “COUNTRYCODE”, 命名空间= “http://schemas.datacontract.org/2004/07/”)] public enum CountryCode:int
[System.CodeDom.Compiler.GeneratedCodeAttribute( “的System.Xml”, “4.0.30319.18408”)] [System.SerializableAttribute()] [System.Xml.Serialization.XmlTypeAttribute(命名空间= “http://schemas.datacontract.org/2004/07/”)] public enum CountryCode
因此,解决方案将无法编译并给出错误:
CS0101:名称空间“TAP”已包含“CountryCode”
的定义任何想法都会受到赞赏。
答案 0 :(得分:0)
添加服务引用时,请务必选中“在引用的程序集中重用类型”。以下链接应提供有关该主题的更多信息......
http://msdn.microsoft.com/en-us/library/vstudio/bb628653(v=vs.100).aspx
编辑:
以下文章可以更清楚地了解你所看到的......
http://msdn.microsoft.com/en-us/library/bb907578(v=vs.110).aspx
特别是以下信息......
将服务引用添加到项目时,将在本地项目中生成服务中定义的任何类型。在许多情况下,当服务使用常见的.NET Framework类型或在共享库中定义类型时,这会创建重复类型。 为避免此问题,默认情况下共享引用程序集中的类型。如果要为一个或多个程序集禁用类型共享,可以在“配置服务引用”对话框中执行此操作。 在单个程序集中禁用类型共享 在Solution Explorer中,选择服务引用。 在项目菜单上,单击配置服务引用。 在“配置服务引用”对话框中,选择“在指定的引用程序集中重用类型”。 选中要在其中启用类型共享的每个程序集的复选框。要禁用程序集的类型共享,请清除该复选框。 禁用所有程序集中的类型共享 在Solution Explorer中,选择服务引用。 在项目菜单上,单击配置服务引用。 在“配置服务引用”对话框中,清除“引用的程序集中的重用类型”复选框。
祝你好运!