WCF を使用する .NET クライアントがあります。検証のために、次のような xsd を使用します。
<xs:complexType name="MyBaseType">
<xs:sequence>
<xs:element name="Family" type="FamilyType"/>
<xs:element name="Relatives" type="RelativesType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
「Family」のみを含み、「Relatives」要素を含まない XML インスタンスを送信しようとすると、検証の結果は次のようになります。
(翻訳):
名前空間「...」の要素「myBase」の内容が不完全です。可能な要素のリストが必要です: 名前空間「...」の「家族、親戚」
(オリジナル):
"Der Inhalt des Elements "myBase" in Namespace '...' ist unvollständig. Erwartet wurde die Liste der möglichen Elemente: 'Family, Relatives' in Namespace '...'"
ただし、「Relatives」要素は で指定されているため、スキーマによるとオプションです (存在する必要はありません) minOccurs="0"
。
Reference.cs で見逃したものはありますか? - System.Xml.Serialization.XmlRootAttributeとは別に、自動生成されたコードに追加する必要がありました。
使用ツール:svcutil、4.0.30319.1