2010-01-05 54 views
1

你好我有一个C#WebService的问题,这是工作正常,但突然就停止工作,我得到这个错误:WebService的问题枚举值无效

未处理的异常:System.InvalidOperationException:有是在XML文档 System.InvalidOperationException错误:“大”不是来源

来源有效值是一个枚举,所以我去了我的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> 

我可以看到它没有'大“价值,所以我点击WebService的引用,然后更新Web引用,然后我再次去了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:enumeration value="Big" />  <--------- This one was added 
     </s:restriction> 
     </s:simpleType> 

然而,当我再次遇到它,我得到了同样的错误。

未处理的异常:System.InvalidOperationException:有是在XML文档 System.InvalidOperationException错误:“大”不是来源

我怎么能解决这个问题一个有效的价值? 似乎更新webservice引用是不够的。我错过了什么吗?

在此先感谢。

阿尔伯特

--update

我们为了能够步入解串器

?XML版本加入此= “1.0” 编码= “UTF-8”?> 配置> System.Diagnostics程序> 开关> 添加名称= “XmlSerialization.Compilation” 值= “4”/> /交换机> /system.diagnostics> /配置>

参考:http://msdn.microsoft.com/en-us/library/aa302290.aspx

这是我发现

全球:: ReVal.Service.BE.WebService.Sources Read1_Sources(字符串s){ 开关(S){ 情况@ “无效” :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; 默认值:throw CreateUnknownConstantException(s,typeof(global :: ReVal.Service.BE.WebService.Sources)); } }

Big值不在webservice的XMLSerializationReader中。

+0

更新后你做了重新编译,对吧?没有冒犯.. – 2010-01-05 16:46:14

+0

是的,我做过了,我重新推荐了整个解决方案 – Albert 2010-01-05 16:47:59

+0

您是通过Web引用引用WebService还是通过拉动WSDL并通过该工具运行以生成代理? – 2010-01-05 16:57:09

回答

0
s:enumeration value="Invalid" /> 

缺少的一部分:

<s:enumeration value="Invalid" /> 

是只是一个错字? 是在“<的”一个问题

< s:simpleType name="Sources"> 

的空间?

+0

是的,这是一个故意的打字错误,我必须以这种方式编辑它,因为页面正在删除XML部分 – Albert 2010-01-05 17:17:58