次の方法で共有


XmlTypeMapping.ElementName プロパティ

割り当てられたオブジェクトの XML 要素名を取得します。

Public ReadOnly Property ElementName As String
[C#]
public string ElementName {get;}
[C++]
public: __property String* get_ElementName();
[JScript]
public function get ElementName() : String;

プロパティ値

割り当てられたオブジェクトの XML 要素名。既定値は、オブジェクトのクラス名です。

解説

オブジェクトの代替要素名を設定するには、 SoapTypeAttribute をクラスに適用し、 TypeName プロパティに新しい値を設定します。

使用例

 
Imports System
Imports System.IO
Imports System.Xml.Serialization
Imports System.Collections
Imports System.Xml
Imports System.Text


Namespace Company
    
<SoapType("TheGroup", "http://www.cohowinery.com")> _
Public Class Group

   ' The SoapElementAttribute specifies that the
   ' generated XML element name will be "Wheels"
   ' instead of "Vehicle".
   Public GroupName As String 
   public Things() As  Thing
   <SoapElement(DataType:= "language")> _
   Public Lang As String = "en"
   <SoapElement(DataType:= "integer")> _
   Public MyNumber As String 

   <SoapElement(DataType:= "duration")> _
   Public ReDate As String  = "8/31/01"
End Class

Public Class Thing 
   Public ThingName As String 
End Class

Public Class Test
   Shared Sub Main()
   
      Dim t As Test = new Test()

      t.GetMap("MyMap.xml")
   End Sub


   public Sub GetMap(filename As string )
      ' Create an XmlSerializer instance.
      Dim map As XmlTypeMapping = new SoapReflectionImporter().ImportTypeMapping(GetType(Group))
      Console.WriteLine("ElementName: " + map.ElementName)
      Console.WriteLine("Namespace: " + map.Namespace)
      Console.WriteLine("TypeFullName: " + map.TypeFullName)
      Console.WriteLine("TypeName: " + map.TypeName)
      Dim ser As XmlSerializer= new XmlSerializer(map)
      Dim xGroup As Group =  new Group()
      xGroup.GroupName= "MyCar"
      xGroup.MyNumber= 5454.ToString()
      xGroup.Things = new Thing(){new Thing(), new Thing()}
      ' To write the outer wrapper, use an XmlTextWriter.
      Dim writer As XmlTextWriter =  _
      new XmlTextWriter(filename, Encoding.UTF8)
      writer.Formatting = Formatting.Indented
      writer.WriteStartElement("wrapper")
      ser.Serialize(writer, xGroup)
      writer.WriteEndElement()
      writer.Close()
   End Sub
End Class

End namespace

[C#] 
using System;
using System.IO;
using System.Xml.Serialization;
using System.Collections;
using System.Xml;
using System.Text;

namespace Company{

[SoapType("TheGroup", "http://www.cohowinery.com")]
public class Group
{
   public string GroupName;
   public Thing[] Things;
   [SoapElement(DataType = "language")]
   public string Lang = "en";
   [SoapElement(DataType = "integer")]
   public string MyNumber;

   [SoapElement(DataType = "duration")]
   public string ReDate = "8/31/01";
}

public class Thing{ 
   public string ThingName;
}

public class Test
{
   public static void Main()
   {
      Test t = new Test();

      t.GetMap("MyMap.xml");
   }


   public void GetMap(string filename){
      // Create an XmlSerializer instance.
      XmlTypeMapping map = new SoapReflectionImporter().ImportTypeMapping(typeof(Group));
      Console.WriteLine("ElementName: " + map.ElementName);
      Console.WriteLine("Namespace: " + map.Namespace);
      Console.WriteLine("TypeFullName: " + map.TypeFullName);
      Console.WriteLine("TypeName: " + map.TypeName);
      XmlSerializer ser = new XmlSerializer(map);
      Group xGroup=  new Group();
      xGroup.GroupName= "MyCar";
      xGroup.MyNumber= 5454.ToString();
      xGroup.Things = new Thing[]{new Thing(), new Thing()};
      // To write the outer wrapper, use an XmlTextWriter.
      XmlTextWriter writer = 
      new XmlTextWriter(filename, Encoding.UTF8);
      writer.Formatting = Formatting.Indented;
      writer.WriteStartElement("wrapper");
      ser.Serialize(writer, xGroup);
      writer.WriteEndElement();
      writer.Close();
   }
}
}

[C++] 
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml::Serialization;
using namespace System::Collections;
using namespace System::Xml;
using namespace System::Text;

__gc public class Thing
{
public:
   String* ThingName;
};

[SoapType(S"TheGroup", S"http://www.cohowinery.com")]
__gc public class Group 
{
public:
   String* GroupName;
   Thing * Things[];

   [SoapElement(DataType = S"language")]
   static String* Lang = S"en";

   [SoapElement(DataType = S"integer")]
   String* MyNumber;

   [SoapElement(DataType = S"duration")]
   static String* ReDate = S"8/31/01";
};

void GetMap(String* filename)
{
   // Create an XmlSerializer instance.
   SoapReflectionImporter *sri = new SoapReflectionImporter();
   XmlTypeMapping *map = sri->ImportTypeMapping(__typeof(Group) );
   Console::WriteLine(S"ElementName: {0}", map -> ElementName);
   Console::WriteLine(S"Namespace: {0}", map -> Namespace);
   Console::WriteLine(S"TypeFullName: {0}", map -> TypeFullName);
   Console::WriteLine(S"TypeName: {0}", map -> TypeName);

   XmlSerializer* ser = new XmlSerializer(map);

   Group* xGroup = new Group();
   xGroup -> GroupName= S"MyCar";
   xGroup -> MyNumber= S"5454";
   xGroup -> Things = new Thing*[2]; // {new Thing(), new Thing()};
   xGroup->Things[0] = new Thing();
   xGroup->Things[1] = new Thing();

   // To write the outer wrapper, use an XmlTextWriter.
   XmlTextWriter* writer = new XmlTextWriter(filename, Encoding::UTF8);
   writer -> Formatting = Formatting::Indented;
   writer -> WriteStartElement(S"wrapper");
   ser -> Serialize(writer, xGroup);
   writer -> WriteEndElement();
   writer -> Close();
}

int main() 
{
   GetMap(S"MyMap.xml");
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

XmlTypeMapping クラス | XmlTypeMapping メンバ | System.Xml.Serialization 名前空間