Freigeben über


XmlArrayAttribute-Konstruktor (String)

Initialisiert eine neue Instanz der XmlArrayAttribute-Klasse und gibt den in der XML-Dokumentinstanz generierten XML-Elementnamen an.

Namespace: System.Xml.Serialization
Assembly: System.Xml (in system.xml.dll)

Syntax

'Declaration
Public Sub New ( _
    elementName As String _
)
'Usage
Dim elementName As String

Dim instance As New XmlArrayAttribute(elementName)
public XmlArrayAttribute (
    string elementName
)
public:
XmlArrayAttribute (
    String^ elementName
)
public XmlArrayAttribute (
    String elementName
)
public function XmlArrayAttribute (
    elementName : String
)

Parameter

  • elementName
    Der Name des von XmlSerializer generierten XML-Elements.

Hinweise

Weitere Informationen über das Verwenden von Attributen finden Sie unter Erweitern von Metadaten mithilfe von Attributen.

Beispiel

Im folgenden Beispiel wird XmlArrayAttribute zwei Arrays zugewiesen und eine Klasseninstanz serialisiert, die diese Arrays enthält.

Option Explicit
Option Strict

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


Public Class MyClass1
    <XmlArrayAttribute("MyStrings")> _
        Public MyStringArray() As String

    <XmlArrayAttribute(ElementName := "MyIntegers")> _
        Public MyIntegerArray() As Integer
End Class


Public Class Run
    
    Public Shared Sub Main()
        Dim test As New Run()
        test.SerializeObject("MyClass.xml")
    End Sub    
    
    Public Sub SerializeObject(ByVal filename As String)
        ' Creates a new instance of the XmlSerializer class.
        Dim s As New XmlSerializer(GetType(MyClass1))
        ' Needed a StreamWriter to write the file.
        Dim myWriter As New StreamWriter(filename)
        
        Dim class1 As New MyClass1()
        ' Creates and populates a string array, then assigns
        ' it to the MyStringArray property.
        Dim myStrings() As String =  {"Hello", "World", "!"}
        class1.MyStringArray = myStrings
        ' Creates and populates an integer array, and assigns
        ' it to the MyIntegerArray property.
        Dim myIntegers() As Integer =  {1, 2, 3}
        class1.MyIntegerArray = myIntegers
        ' Serializes the class, and writes it to disk.
        s.Serialize(myWriter, class1)
        myWriter.Close()
    End Sub
End Class
using System;
using System.IO;
using System.Xml;
using System.Xml.Serialization;
 
public class MyClass{
   [XmlArrayAttribute("MyStrings")]
   public string [] MyStringArray;
   [XmlArrayAttribute(ElementName = "MyIntegers")]
   public int [] MyIntegerArray;
}
 
public class Run{
   public static void Main()
   {
      Run test = new Run();
      test.SerializeObject("MyClass.xml");
   }
 
   public void SerializeObject(string filename)
   {
      // Creates a new instance of the XmlSerializer class.
      XmlSerializer s = new XmlSerializer(typeof(MyClass));
      // Needs a StreamWriter to write the file.
      TextWriter myWriter= new StreamWriter(filename);
 
      MyClass myClass = new MyClass();
      // Creates and populates a string array, then assigns
      // it to the MyStringArray property.
      string [] myStrings = {"Hello", "World", "!"};
      myClass.MyStringArray = myStrings;
      /* Creates and populates an integer array, and assigns
      it to the MyIntegerArray property. */
      int [] myIntegers = {1,2,3};
      myClass.MyIntegerArray = myIntegers;     
      // Serializes the class, and writes it to disk.
      s.Serialize(myWriter, myClass);
      myWriter.Close();
   }
}
#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 MyClass
{
public:

   [XmlArrayAttribute("MyStrings")]
   array<String^>^MyStringArray;

   [XmlArrayAttribute(ElementName="MyIntegers")]
   array<Int32>^MyIntegerArray;
};

int main()
{
   String^ filename = "MyClass.xml";

   // Creates a new instance of the XmlSerializer class.
   XmlSerializer^ s = gcnew XmlSerializer( MyClass::typeid );

   // Needs a StreamWriter to write the file.
   TextWriter^ myWriter = gcnew StreamWriter( filename );
   MyClass^ myClass = gcnew MyClass;

   // Creates and populates a string array, then assigns
   // it to the MyStringArray property.
   array<String^>^myStrings = {"Hello","World","!"};
   myClass->MyStringArray = myStrings;

   /* Creates and populates an integer array, and assigns
      it to the MyIntegerArray property. */
   array<Int32>^myIntegers = {1,2,3};
   myClass->MyIntegerArray = myIntegers;

   // Serializes the class, and writes it to disk.
   s->Serialize( myWriter, myClass );
   myWriter->Close();
}
import System.*;
import System.IO.*;
import System.Xml.*;
import System.Xml.Serialization.*;

public class MyClass
{
    /** @attribute XmlArrayAttribute("MyStrings")
     */
    public String myStringArray[];

    /** @attribute XmlArrayAttribute(ElementName = "MyIntegers")
     */
    public int myIntegerArray[];
} //MyClass

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

    public void SerializeObject(String fileName)
    {
        // Creates a new instance of the XmlSerializer class.
        XmlSerializer s = new XmlSerializer(MyClass.class.ToType());

        // Needs a StreamWriter to write the file.
        TextWriter myWriter = new StreamWriter(fileName);
        MyClass myClass = new MyClass();

        // Creates and populates a string array, then assigns
        // it to the MyStringArray property.
        String myStrings[] =  { "Hello", "World", "!" };
        myClass.myStringArray = myStrings;

        /* Creates and populates an integer array, and assigns
           it to the MyIntegerArray property. 
        */
        int myIntegers[] =  { 1, 2, 3 };
        myClass.myIntegerArray = myIntegers;

        // Serializes the class, and writes it to disk.
        s.Serialize(myWriter, myClass);
        myWriter.Close();
    } //SerializeObject
} //Run
<?xml version="1.0"?>
 <MyClass1 xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema">
   <MyStrings>
     <string>Hello</string>
     <string>World</string>
     <string>!</string>
   </MyStrings>
   <MyIntegers>
     <int>1</int>
     <int>2</int>
     <int>3</int>
   </MyIntegers>
 </MyClass1>

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

XmlArrayAttribute-Klasse
XmlArrayAttribute-Member
System.Xml.Serialization-Namespace
XmlArrayItemAttribute
XmlSerializer