XmlAttributeAttribute.AttributeName 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置 XML 属性的名称。
public:
property System::String ^ AttributeName { System::String ^ get(); void set(System::String ^ value); };
public string AttributeName { get; set; }
member this.AttributeName : string with get, set
Public Property AttributeName As String
属性值
XML 属性的名称。 默认值为成员名称。
示例
以下示例设置 AttributeName 的一个 XmlAttributeAttribute属性。
#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 Group
{
public:
// Change the XML attribute name.
[XmlAttributeAttribute(AttributeName="MgrName")]
String^ Name;
/* Use the AttributeName to collect all the XML attributes
in the XML-document instance. */
};
void SerializeObject( String^ filename )
{
Console::WriteLine( "Serializing" );
// Create an instance of the XmlSerializer class.
XmlSerializer^ mySerializer = gcnew XmlSerializer( Group::typeid );
// Writing the file requires a TextWriter.
TextWriter^ writer = gcnew StreamWriter( filename );
// Create an instance of the class that will be serialized.
Group^ myGroup = gcnew Group;
/* Set the Name property, which will be generated
as an XML attribute. */
myGroup->Name = "Wallace";
// Serialize the class, and close the TextWriter.
mySerializer->Serialize( writer, myGroup );
writer->Close();
}
void DeserializeObject( String^ filename )
{
Console::WriteLine( "Deserializing" );
XmlSerializer^ mySerializer = gcnew XmlSerializer( Group::typeid );
FileStream^ fs = gcnew FileStream( filename,FileMode::Open );
Group^ myGroup = dynamic_cast<Group^>(mySerializer->Deserialize( fs ));
Console::WriteLine( myGroup->Name );
}
int main()
{
/* To use the AttributeName to collect all the
XML attributes. Call SerializeObject to generate
an XML document and alter the document by adding
new XML attributes to it. Then comment out the SerializeObject
method, and call DeserializeObject. */
SerializeObject( "MyAtts.xml" );
DeserializeObject( "MyAtts.xml" );
}
using System;
using System.IO;
using System.Xml;
using System.Xml.Serialization;
public class Group
{
// Change the XML attribute name.
[XmlAttribute(AttributeName = "MgrName")]
public string Name;
/* Use the AttributeName to collect all the XML attributes
in the XML-document instance. */
}
public class Run
{
public static void Main()
{
Run test = new Run();
/* To use the AttributeName to collect all the
XML attributes. Call SerializeObject to generate
an XML document and alter the document by adding
new XML attributes to it. Then comment out the SerializeObject
method, and call DeserializeObject. */
test.SerializeObject("MyAtts.xml");
test.DeserializeObject("MyAtts.xml");
}
public void SerializeObject(string filename)
{
Console.WriteLine("Serializing");
// Create an instance of the XmlSerializer class.
XmlSerializer mySerializer = new XmlSerializer(typeof(Group));
// Writing the file requires a TextWriter.
TextWriter writer = new StreamWriter(filename);
// Create an instance of the class that will be serialized.
Group myGroup = new Group();
/* Set the Name property, which will be generated
as an XML attribute. */
myGroup.Name = "Wallace";
// Serialize the class, and close the TextWriter.
mySerializer.Serialize(writer, myGroup);
writer.Close();
}
public void DeserializeObject(string filename)
{
Console.WriteLine("Deserializing");
XmlSerializer mySerializer =
new XmlSerializer(typeof(Group));
FileStream fs = new FileStream(filename, FileMode.Open);
Group myGroup = (Group)
mySerializer.Deserialize(fs);
Console.WriteLine(myGroup.Name);
}
}
Option Explicit
Option Strict
Imports System.IO
Imports System.Xml
Imports System.Xml.Serialization
Public Class Group
' Change the XML attribute name.
<XmlAttribute(AttributeName := "MgrName")> Public Name As String
' Use the AttributeName to collect all the XML attributes
' in the XML-document instance.
<XmlAttribute(AttributeName := "*")> Public Attrs() As XmlAttribute
End Class
Public Class Run
Public Shared Sub Main()
Dim test As New Run()
' To use the AttributeName to collect all the
' XML attributes. Call SerializeObject to generate
' an XML document and alter the document by adding
' new XML attributes to it. Then comment out the SerializeObject
' method, and call DeserializeObject.
test.SerializeObject("MyAtts.xml")
test.DeserializeObject("MyAtts.xml")
End Sub
Public Sub SerializeObject(ByVal filename As String)
Console.WriteLine("Serializing")
' Create an instance of the XmlSerializer class.
Dim mySerializer As New XmlSerializer(GetType(Group))
' Writing the file requires a TextWriter.
Dim writer As New StreamWriter(filename)
' Create an instance of the class that will be serialized.
Dim myGroup As New Group()
' Set the Name property, which will be generated
' as an XML attribute.
myGroup.Name = "Wallace"
' Serialize the class, and close the TextWriter.
mySerializer.Serialize(writer, myGroup)
writer.Close()
End Sub
Public Sub DeserializeObject(ByVal filename As String)
Console.WriteLine("Deserializing")
Dim mySerializer As New XmlSerializer(GetType(Group))
Dim fs As New FileStream(filename, FileMode.Open)
Dim myGroup As Group = CType(mySerializer.Deserialize(fs), Group)
' The following code prints all the attributes in the
' XML document. To collect the attributes, the AttributeName of the
' XmlAttributeAttribute must be set to "*".
Dim xAtt As XmlAttribute
For Each xAtt In myGroup.Attrs
Console.WriteLine(xAtt.Name & ":" & xAtt.Value)
Next xAtt
End Sub
End Class
注解
当不能使用默认值时, AttributeName 使用该属性可以指定 XML 属性名称。 例如,如果 XML 属性名称作为成员标识符无效,则可以在将标识符设置为 AttributeName 无效名称时对标识符使用有效名称。