2012-04-15 7 views
1

가 나는 XSD 내부의 다음 노드를 가진 WSDL에 (또한 서비스 참조 시도) 웹 참조를 생성 : 클라이언트 프록시 클래스를 생성VB.NET 대소 문자를 구분하지 웹 참조 열거 문제

<xs:element name="filter"> 
    <xs:complexType> 
     <xs:choice minOccurs="0" maxOccurs="unbounded"> 
     <xs:element minOccurs="0" maxOccurs="unbounded" ref="condition" /> 
     <xs:element minOccurs="0" maxOccurs="unbounded" ref="filter" /> 
     </xs:choice> 
     <xs:attribute default="and" name="type"> 
     <xs:simpleType> 
      <xs:restriction base="xs:NMTOKEN"> 
      <xs:enumeration value="and" /> 
      <xs:enumeration value="or" /> 
      <xs:enumeration value="AND" /> 
      <xs:enumeration value="OR" /> 
      </xs:restriction> 
     </xs:simpleType> 
     </xs:attribute> 
     <xs:attribute default="false" name="not" type="xs:boolean" /> 
    </xs:complexType> 
    </xs:element> 

'''<remarks/> 
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.225"), _ 
System.SerializableAttribute(), _ 
System.Xml.Serialization.XmlTypeAttribute(AnonymousType:=true, [Namespace]:="urn://wsc.acme.com/dm/2010/02/02")> _ 
Public Enum filterType 

    '''<remarks/> 
    [and] 

    '''<remarks/> 
    [or] 

    '''<remarks/> 
    [AND] 

    '''<remarks/> 
    [OR] 
End Enum 

VB.NET은 대/소문자를 구분하지 않으므로 VB 프로젝트에서는 빌드되지 않습니다. 하나의 집합 및/또는 삭제를 시도했지만 XML을 만들 때 선택한 값을 무시합니다. 또한 실패한 세트의 끝에 X를 추가하려고 시도했습니다.

이 방법을 사용할 수 있습니까? XSD를 업데이트하려고 시도 했으므로 성공하지 못한 채 두 가지 값만있었습니다. 흥미로운 점은 default가 "and"로 설정되어 있고 디버깅하는 동안 and가 true로 설정되면 실제로 생성되는 노드 속성이 실제로 생성되지 않는다는 것입니다.

답변

0

동일한 이름의 열거 형을 두 개 가질 수 없습니다. AllowMultiple 특성을 설정해 볼 수는 있지만 발생하는 문제는 여전히 발생합니다. 내 제안은 원래 XSD에서 중복 값을 제거하고 다시 작성하는 것입니다.