您好我遇到了c#WebService的问题,它工作正常但突然停止工作,我收到此错误:
未处理的异常:System.InvalidOperationException:XML文档中存在错误 System.InvalidOperationException:'Big'不是Sources的有效值
来源是一个枚举,所以我去了我的wsdl就是这样:
< s:simpleType name="Sources">
<s:restriction base="s:string">
s:enumeration value="Invalid" />
<s:enumeration value="Any" />
<s:enumeration value="RM" />
<s:enumeration value="RV" />
<s:enumeration value="RD" />
<s:enumeration value="LV" />
</s:restriction>
</s:simpleType>
我可以看到它没有'Big'值,所以我点击WebService引用然后更新WebReference,然后我再次转到wsdl,现在我可以看到'Big'值
< s:simpleType name="Sources">
<s:restriction base="s:string">
<s:enumeration value="Invalid" />
<s:enumeration value="Any" />
<s:enumeration value="RM" />
<s:enumeration value="RV" />
<s:enumeration value="RD" />
<s:enumeration value="LV" />
<s:enumeration value="Big" /> <--------- This one was added
</s:restriction>
</s:simpleType>
然而,当我再次运行它时,我得到了同样的错误。
未处理的异常:System.InvalidOperationException:XML文档中存在错误 System.InvalidOperationException:'Big'不是Sources的有效值
我该如何解决这个问题? 似乎更新webservice参考是不够的。我错过了什么吗?
提前致谢。
阿尔伯特
- 更新
我添加了这个以便能够进入反序列化器
?xml version =“1.0”encoding =“utf-8”?&gt; 结构&gt; System.Diagnostics程序&GT; 开关&GT; add name =“XmlSerialization.Compilation”value =“4”/&gt; /开关&GT; /system.diagnostics> /结构&gt;
参考:http://msdn.microsoft.com/en-us/library/aa302290.aspx
这是我发现的
global :: ReVal.Service.BE.WebService.Sources Read1_Sources(string s){ switch(s){ case @“Invalid”:return global :: ReVal.Service.BE.WebService.Sources。@ Invalid; case @“Any”:return global :: ReVal.Service.BE.WebService.Sources。@ Any; case @“RM”:return global :: ReVal.Service.BE.WebService.Sources。@ RM; case @“RV”:return global :: ReVal.Service.BE.WebService.Sources。@ RV; case @“RD”:return global :: ReVal.Service.BE.WebService.Sources。@ RD; case @“LV”:return global :: ReVal.Service.BE.WebService.Sources。@ LV; default:throw CreateUnknownConstantException(s,typeof(global :: ReVal.Service.BE.WebService.Sources)); } }
大值不在Web服务的XMLSerializationReader中。
答案 0 :(得分:0)
s:enumeration value="Invalid" />
缺少一部分:
<s:enumeration value="Invalid" />
这只是一个错字?
中的空格< s:simpleType name="Sources">
在“&lt; s”问题上?