<xs:element name='ABC'>
<xs:complexType>
<xs:sequence>
<xs:element ref='P' minOccurs="7" maxOccurs="11"/>
</xs:sequence>
<xs:attribute name='S'/>
<xs:attribute name='SI'/>
</xs:complexType>
</xs:element>
<xs:element name="P">
<xs:complexType mixed="true">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref='TT'/>
<xs:element ref='BR'/>
<xs:element ref='XREF'/>
<xs:element ref='XREF-TARGET'/>
<xs:element ref='E'/>
<xs:element ref='FT'/>
<xs:element ref='SUP'/>
<xs:element ref='SUB'/>
<xs:element ref='IE'/>
<xs:element ref='STD'/>
<xs:element ref='XDOC'/>
<xs:element ref='XFILE'/>
<xs:element ref='MSR-QUERY-TEXT'/>
</xs:choice>
<xs:attribute name='HELP-ENTRY'/>
<xs:attribute name='KEEP-WITH-PREVIOUS'>
<xs:simpleType>
<xs:restriction base='xs:string'>
<xs:enumeration value='KEEP'/>
<xs:enumeration value='NO-KEEP'/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name='S'/>
<xs:attribute name='SI' type="typeSI"/>
<xs:attribute name='T'/>
<xs:attribute name='VIEW'/>
</xs:complexType>
</xs:element>
<ABC>
<P SI="description">test</P>
<P SI="category-1"></P>
<P SI="category-2"></P>
<P SI="category-3"></P>
<P SI="error-occurrence"></P>
<P SI="occurrence-milestone"></P>
<P SI="recorded-date">2011-07-08T00:00:00</P>
<P SI="xy"></P>
<P SI="ab">Y</P>
<P SI="attachmentlist" />
<P SI="attachment" />
</ABC>
|
|
Mapper.AssertConfigurationIsValid();
|
|
|
Habe Edit#1 für vorherigen Kommentar hinzugefügt und Edit#2. Für Edit#2 habe ich keine Erklärung.
– donttellya 22.11.2011
|
||
|
Danke nochmal für Deine Hilfe. Musste aber doch einiges anderst machen. Die vom Webservice gelieferten responses konnten nicht in die von XSD.exe generierten Klassen deserialisert werden. Es kam zu Exceptions die ich nicht auf die schnelle lösen konnte. Also habe ich dies nun mit XmlDocument und xpath Ausdrücken gelöst. Die Lösung mit Automapper hätte vermutlich nicht funktioniert,weil nur bestimmte Elemente aus Collections zu mappen sind auf simple typen.Oder wie hätte man dies mit Automapper lösen können,also z.B. so was in der Art-> Map((list.Find(o=>o.id == 3)).Text, objB.Name)?
– donttellya 29.11.2011
|
Woher kommt das string Array "Text"?
|
|
|
+1. Was so ein kleines unscheinbares Attribut alles anrichten kann. Danke für den Hinweis, wieder was gelernt.
– ffordermaier 30.11.2011
|
zu 2) Du hast größtenteils recht, Außnahmen wäre nur wenn bereits existierende Properties umgemapped werden müssen,aber ist natürlich sehr unwahrscheinlich.
Dann wurde mir noch in einem anderen Forum Linq2Xml vorgeschlagen, dazu habe ich meine Frage um Punkt 4 erweitert, sehe dies aber nicht als Lösung (sorry dass ich in mehreren Foren gepostet habe,wusste nicht dass dies nicht gern gesehen ist)