XmlAttributeAttribute.DataType Property
Gets or sets the XSD data type of the XML attribute generated by the XmlSerializer.
Namespace: System.Xml.Serialization
Assembly: System.Xml (in System.Xml.dll)
Syntax
VB
C#
C++
F#
JScript
Copy
public string DataType { get; set; }
Property Value
Type: System.String
An XSD (XML Schema Document) data type, as defined by the World Wide Web Consortium (www.w3.org) document named "XML Schema: DataTypes".
Remarks
The following table lists the XSD simple data types with their.NET equivalents.
For the XSD base64Binary and hexBinary data types, use an array of Byte structures, and apply a XmlArrayItemAttribute with the DataType property set to "base64Binary" or "hexBinary", as appropriate. For the XSD time and date data types, use the DateTime type and apply the XmlAttributeAttribute with the DataType set to "date" or "time".
For every XSD type that is mapped to a string, apply the XmlAttributeAttribute with its DataType property set to the XSD type. However, this does not change the serialization format, only the schema for the member.
Note |
The property is case-sensitive, so you must set it exactly to one of the XSD data types. |
Note |
Passing binary data as an XML element is more efficient than passing it as an XML attribute. |
For more information about XML data types, see the World Wide Web Consortium (www.w3.org) document named "XML Schema Part 2: Datatypes".
XSD data type |
.NET data type |
anyURI |
String |
base64Binary |
Array of Byte objects |
boolean |
Boolean |
byte |
SByte |
date |
DateTime |
dateTime |
DateTime |
decimal |
Decimal |
double |
Double |
ENTITY |
String |
ENTITIES |
String |
float |
Single |
gDay |
String |
gMonth |
String |
gMonthDay |
String |
gYear |
String |
gYearMonth |
String |
hexBinary |
Array of Byte objects |
ID |
String |
IDREF |
String |
IDREFS |
String |
int |
Int32 |
integer |
String |
language |
String |
long |
Int64 |
Name |
String |
NCName |
String |
negativeInteger |
String |
NMTOKEN |
String |
NMTOKENS |
String |
normalizedString |
String |
nonNegativeInteger |
String |
nonPositiveInteger |
String |
NOTATION |
String |
positiveInteger |
String |
QName |
XmlQualifiedName |
duration |
String |
string |
String |
short |
Int16 |
time |
DateTime |
token |
String |
unsignedByte |
Byte |
unsignedInt |
UInt32 |
unsignedLong |
UInt64 |
unsignedShort |
UInt16 |
Examples
The following example applies the XmlAttributeAttribute to two members, and sets the DataType property set to different values.
VB
C#
C++
F#
JScript
Copy
public class Group{
[XmlAttribute(DataType = "string")]
public string Name;
[XmlAttribute (DataType = "base64Binary")]
public byte[] Hex64Code;
}
Platforms
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role not supported), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information
.NET Framework
Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0
.NET Framework Client Profile
Supported in: 4, 3.5 SP1
See Also
Reference
XmlAttributeAttribute Class
XmlAttributeAttribute Members
System.Xml.Serialization Namespace