次の方法で共有


Appinfo 要素のバインディング サポート

.NET Framework では、<appinfo> 要素のバインディングをサポートしていません。

XML スキーマ ドキュメントからソース コードを生成するとき、Xsd.exe は、<appinfo> 要素およびその内容を無視します。

説明

XML スキーマ ドキュメントからソース コードを生成するとき、Xsd.exe は、<appinfo> 要素およびその内容を無視します。<appinfo> 要素の親である <annotation> についても同様です。

例外は、次の 2 つのエンティティ間の通信です。

XmlSerializerNamespaces オブジェクトは、プレフィックスとそれによって表される名前空間の間で、一組の割り当てを格納するために使用されます。要素 annotation/appinfo/keepNamespaceDeclarations のテキストは、XmlSerializerNamespaces フィールドまたはプロパティの名前です。この変換は、名前空間のプレフィックスを制御できるように、XSD ファイルからコードへ、およびコードから XSD ファイルへという両方向で行われます。

入力 C# クラス :

public class MyClass {
    [XmlAttribute]
    public string name;
    
    public string xpath;
    
    [XmlNamespaceDeclarationsAttribute]
    public XmlSerializerNamespaces xmlns;
}

上記の C# ソースをコンパイルしたアセンブリから生成される XML スキーマ ドキュメント

<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="MyClass" nillable="true" type="MyClass" />
  <xs:complexType name="MyClass">
    <xs:annotation>
      <xs:appinfo>
        <keepNamespaceDeclarations>xmlns</keepNamespaceDeclarations>
      </xs:appinfo>
    </xs:annotation>
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="xpath" type="xs:string" />
    </xs:sequence>
    <xs:attribute name="name" type="xs:string" />
  </xs:complexType>
</xs:schema>

上記の XML スキーマ ドキュメントから生成される C# クラスは、XML スキーマが生成された元の C# クラスと実質的に同一です。

使用可能な属性 バインディング サポート

source

.NET Framework では、<appinfo> 要素をバインドしないため、要素の source 属性をバインドしません。

使用可能な親要素 : <annotation>

使用可能な子要素 : 制限なし****

関連項目

参照

XmlSchemaAppInfo

Footer image

Copyright © 2007 by Microsoft Corporation.All rights reserved.