Kru*_*lur 6 .net web-services asmx
在尝试创建服务实例时,我得到了一个
"方法无法反映"
例外.在内部异常中深入挖掘揭示:
"类型'WebServiceClient.com.compamy.string1'和'WebServiceClient.com.company.string'都使用名称空间'http://www.w3.org/2001/XMLSchema'中的XML类型名称'string'.使用XML属性为类型指定唯一的XML名称和/或命名空间."
该死的东西对我有什么好处?它是由VS2010自动生成的代码...为什么我必须摆弄它?
以下是两种类型:
[GeneratedCode( "System.Xml", "4.0.30319.233" )]
[Serializable]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlType(TypeName = "string", Namespace = "http://www.w3.org/2001/XMLSchema")]
[XmlRoot("FileName", Namespace = "http://company.com/api3/Content/Download/", IsNullable = true)]
public partial class string1 : SoapHeader
Run Code Online (Sandbox Code Playgroud)
和
[GeneratedCode("System.Xml", "4.0.30319.233" )]
[Serializable]
[DebuggerStepThrougt]
[DesignerCategory("code")]
[XmlTypeAttribute(Namespace = "http://www.w3.org/2001/XMLSchema")]
[XmlRootAttribute("SessionKey", Namespace = "ns", IsNullable = true)]
public partial class @string : SoapHeader
Run Code Online (Sandbox Code Playgroud)
我找到了一个解决方案,但我无法解释它为何起作用.我只是从所有方法中删除了所有类型映射属性,我不会再收到任何错误.
删除的行:
[XmlType(TypeName = "string", Namespace = "http://www.w3.org/2001/XMLSchema")]
Run Code Online (Sandbox Code Playgroud)
如果有人能解释我会非常感激!