XmlSerializerNamespaces クラスとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > XmlSerializerNamespaces クラスの意味・解説 

XmlSerializerNamespaces クラス

XmlSerializer が XML ドキュメント インスタンス修飾名を生成するために使用する XML 名前空間プリフィックス格納されています。

名前空間: System.Xml.Serialization
アセンブリ: System.Xml (system.xml.dll 内)
構文構文

Public Class XmlSerializerNamespaces
Dim instance As XmlSerializerNamespaces
public class XmlSerializerNamespaces
public ref class XmlSerializerNamespaces
public class XmlSerializerNamespaces
public class XmlSerializerNamespaces
解説解説

XmlSerializerNamespaces には、XML 名前空間コレクションと、それぞれの名前空間関連付けられたプリフィックス格納されています。XmlSerializer は、この XmlSerializerNamespaces クラスインスタンス使用してXML ドキュメント修飾名を作成します

XmlSerializerNamespaces格納される XML 名前空間は、W3C (www.w3.org) による仕様Namespaces in XML』に準拠する必要があります

XML 名前空間使用すると、XML ドキュメント内の XML 要素と属性の名前を修飾できます修飾名は、プリフィックスローカル名をコロン区切った構成になってます。プリフィックスはプレースホルダとしてだけ機能し名前空間指定する URI割り当てられます。汎用的管理されURI 名前空間ローカル名を組み合わせることにより、生成される名前は、必ず汎用的一意となります

XML ドキュメント修飾名を作成するには、次の手順実行します

  1. XmlSerializerNamespaces インスタンス作成します

  2. Add メソッド使用して必要なプリフィックス名前空間の各ペアをこのインスタンス追加します

  3. XmlSerializerXML ドキュメントシリアル化する各プロパティまたはクラスに、適切な .NET 属性適用します。使用できる属性次に示します

  • XmlArrayAttribute

  • XmlArrayItemAttribute

  • XmlAttributeAttribute

  • XmlElementAttribute

  • XmlRootAttribute

  • XmlTypeAttribute

  1. 属性Namespace プロパティを、XmlSerializerNamespaces オブジェクト名前空間値の 1 つ設定します

  2. XmlSerializerNamespacesXmlSerializerSerialize メソッド渡します

メモメモ

空の名前空間プレフィックスペア作成サポートされません。つまり、次のコード使ってペア作成することはできません。

XmlSerializerNamespaces ns = new XmlSerializerNamespaces(); 
ns.Add("", "");
Dim ns As XmlSerializerNamespaces ns = New
 XmlSerializerNamespaces()
ns.Add("", "")
使用例使用例

XmlSerializerNamespaces オブジェクト作成し、そのオブジェクトプレフィックス名前空間ペア2 つ追加する例を次に示します。この例では、次に XmlSerializerNamespacesSerialize メソッド渡し、このメソッドBooks オブジェクトXML ドキュメントシリアル化ます。Serialize メソッドは、XmlSerializerNamespaces オブジェクト使用して、各 XML 要素と属性2 つ名前空間いずれか修飾します。

Imports System
Imports System.IO
Imports System.Xml
Imports System.Xml.Serialization


Public Class Run
    
    Public Shared Sub Main()
        Dim test As New
 Run()
        test.SerializeObject("XmlNamespaces.xml")
    End Sub    
    
    Public Sub SerializeObject(ByVal
 filename As String)
        Dim s As New XmlSerializer(GetType(Books))
        ' Writing a file requires a TextWriter.
        Dim t As New StreamWriter(filename)
        
        ' Create an XmlSerializerNamespaces object and add two
        ' prefix-namespace pairs. 
        Dim ns As New XmlSerializerNamespaces()
        ns.Add("books", "http://www.cpandl.com")
        ns.Add("money", "http://www.cohowinery.com")
        
        ' Create a Book instance.
        Dim b As New Book()
        b.TITLE = "A Book Title"
        Dim p As New Price()
        p.price = CDec(9.95)
        p.currency = "US Dollar"
        b.PRICE = p
        Dim bks As New Books()
        bks.Book = b
        s.Serialize(t, bks, ns)
        t.Close()
    End Sub
End Class

Public Class Books
    <XmlElement(Namespace := "http://www.cohowinery.com")>
 _
    Public Book As Book
End Class

<XmlType(Namespace := "http://www.cpandl.com")>
 _
Public Class Book
    <XmlElement(Namespace := "http://www.cpandl.com")>
 _
    Public TITLE As String

    <XmlElement(Namespace := "http://www.cohowinery.com")>
 _
    Public PRICE As Price
End Class

Public Class Price
    <XmlAttribute(Namespace := "http://www.cpandl.com")>
 _
    Public currency As String
    
    <XmlElement(Namespace := "http://www.cohowinery.com")>
 _
    Public price As Decimal
End Class

using System;
using System.IO;
using System.Xml;
using System.Xml.Serialization;
 
public class Run
{
   public static void Main()
   {
      Run test = new Run();
      test.SerializeObject("XmlNamespaces.xml");
   }
 
   public void SerializeObject(string
 filename)
   {
      XmlSerializer s = new XmlSerializer(typeof(Books));
      // Writing a file requires a TextWriter.
      TextWriter t = new StreamWriter(filename);

      /* Create an XmlSerializerNamespaces object and add two
      prefix-namespace pairs. */
      XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
      ns.Add("books", "http://www.cpandl.com");
      ns.Add("money", "http://www.cohowinery.com");

      // Create a Book instance.
      Book b = new Book();
      b.TITLE = "A Book Title";
      Price p = new Price();
      p.price = (decimal) 9.95;
      p.currency = "US Dollar";
      b.PRICE = p;
      Books bks = new Books();
      bks.Book = b;
      s.Serialize(t,bks,ns);
      t.Close();
   }
}

public class Books
{
   [XmlElement(Namespace = "http://www.cohowinery.com")]
   public Book Book;
}

[XmlType(Namespace ="http://www.cpandl.com")]
public class Book
{
   [XmlElement(Namespace = "http://www.cpandl.com")]
   public string TITLE;
   [XmlElement(Namespace ="http://www.cohowinery.com")]
   public Price PRICE;
}

public class Price
{
   [XmlAttribute(Namespace = "http://www.cpandl.com")]
   public string currency;
   [XmlElement(Namespace = "http://www.cohowinery.com")]
   public decimal price;
}

#using <System.Xml.dll>
#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Serialization;
public ref class Price
{
public:

   [XmlAttributeAttribute(Namespace="http://www.cpandl.com")]
   String^ currency;

   [XmlElement(Namespace="http://www.cohowinery.com")]
   Decimal price;
};

[XmlType(Namespace="http://www.cpandl.com")]
public ref class Book
{
public:

   [XmlElement(Namespace="http://www.cpandl.com")]
   String^ TITLE;

   [XmlElement(Namespace="http://www.cohowinery.com")]
   Price^ PRICE;
};

public ref class Books
{
public:

   [XmlElement(Namespace="http://www.cohowinery.com")]
   Book^ Book;
};

public ref class Run
{
public:
   static void main()
   {
      Run^ test = gcnew Run;
      test->SerializeObject( "XmlNamespaces.xml" );
   }

   void SerializeObject( String^ filename )
   {
      XmlSerializer^ s = gcnew XmlSerializer( Books::typeid );

      // Writing a file requires a TextWriter.
      TextWriter^ t = gcnew StreamWriter( filename );

      /* Create an XmlSerializerNamespaces object and add two
            prefix-namespace pairs. */
      XmlSerializerNamespaces^ ns = gcnew XmlSerializerNamespaces;
      ns->Add( "books", "http://www.cpandl.com"
 );
      ns->Add( "money", "http://www.cohowinery.com"
 );

      // Create a Book instance.
      Book^ b = gcnew Book;
      b->TITLE = "A Book Title";
      Price^ p = gcnew Price;
      p->price = (Decimal)9.95;
      p->currency = "US Dollar";
      b->PRICE = p;
      Books^ bks = gcnew Books;
      bks->Book = b;
      s->Serialize( t, bks, ns );
      t->Close();
   }
};

int main()
{
   Run::main();
}
import System.*;
import System.IO.*;
import System.Xml.*;
import System.Xml.Serialization.*;

public class Run
{
    public static void main(String[]
 args)
    {
        Run test = new Run();
        test.SerializeObject("XmlNamespaces.xml");
    } //main

    public void SerializeObject(String filename)
    {
        XmlSerializer s = new XmlSerializer(Books.class.ToType());

        // Writing a file requires a TextWriter.
        TextWriter t = new StreamWriter(filename);

        /* Create an XmlSerializerNamespaces object and add two
           prefix-namespace pairs. */
        XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
        ns.Add("books", "http://www.cpandl.com");
        ns.Add("money", "http://www.cohowinery.com");

        // Create a Book instance.
        Book b = new Book();
        b.title = "A Book Title";

        Price p = new Price();
        p.price = Convert.ToDecimal(9.95);
        p.currency = "US Dollar";
        
        b.price = p;

        Books bks = new Books();
        bks.book = b;

        s.Serialize(t, bks, ns);
        t.Close();
    } //SerializeObject
} //Run

public class Books
{
    /** @attribute XmlElement(Namespace = "http://www.cohowinery.com")
     */
    public Book book;
} //Books

/** @attribute XmlType(Namespace = "http://www.cpandl.com")
 */
public class Book
{
    /** @attribute XmlElement(Namespace = "http://www.cpandl.com")
     */
    public String title;
    /** @attribute XmlElement(Namespace = "http://www.cohowinery.com")
     */
    public Price price;
} //Book

public class Price
{
    /** @attribute XmlAttribute(Namespace = "http://www.cpandl.com")
     */
    public String currency;
    /** @attribute XmlElement(Namespace = "http://www.cohowinery.com")
     */
    public System.Decimal price;
} //Price
継承階層継承階層
System.Object
  System.Xml.Serialization.XmlSerializerNamespaces
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「XmlSerializerNamespaces クラス」の関連用語

XmlSerializerNamespaces クラスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



XmlSerializerNamespaces クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS