<?xml version="1.0" encoding="utf-8"?> <Type Name="SoapElementAttribute" FullName="System.Xml.Serialization.SoapElementAttribute"> <TypeSignature Maintainer="auto" Language="C#" Value="public class SoapElementAttribute : Attribute" /> <TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit SoapElementAttribute extends System.Attribute" /> <AssemblyInfo> <AssemblyName>System.Xml</AssemblyName> <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> <AssemblyVersion>4.0.0.0</AssemblyVersion> </AssemblyInfo> <ThreadSafetyStatement>To be added</ThreadSafetyStatement> <Base> <BaseTypeName>System.Attribute</BaseTypeName> </Base> <Interfaces /> <Attributes> <Attribute> <AttributeName>System.AttributeUsage(System.AttributeTargets.Property | System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.ReturnValue | System.AttributeTargets.All)</AttributeName> </Attribute> </Attributes> <Docs> <remarks> <attribution license="cc4" from="Microsoft" modified="false" /> <para>The <see cref="T:System.Xml.Serialization.SoapElementAttribute" /> class belongs to a family of attributes that controls how the <see cref="T:System.Xml.Serialization.XmlSerializer" /> serializes or deserializes an object as encoded SOAP XML. The resulting XML conforms to section 5 of the World Wide Web Consortium (www.w3.org) document, "Simple Object Access Protocol (SOAP) 1.1". For a complete list of similar attributes, see <format type="text/html"><a href="93EE258C-9C0F-4A08-897C-C10DB7A00F91">[<topic://cpconAttributesThatControlSOAPEncodedSerialization>]</a></format>.</para> <para>To serialize an object as an encoded SOAP message, you must construct the <see cref="T:System.Xml.Serialization.XmlSerializer" /> using an <see cref="T:System.Xml.Serialization.XmlTypeMapping" /> created with the <see cref="M:System.Xml.Serialization.SoapReflectionImporter.ImportTypeMapping(System.Type)" /> method of the <see cref="T:System.Xml.Serialization.SoapReflectionImporter" /> class.</para> <para>Apply the <see cref="T:System.Xml.Serialization.SoapElementAttribute" /> to a public field to direct the <see cref="T:System.Xml.Serialization.XmlSerializer" /> to serialize the field as an encoded SOAP XML element.</para> <para>For more information about using attributes, see <format type="text/html"><a href="30386922-1E00-4602-9EBF-526B271A8B87">[<topic://cpconExtendingMetadataUsingAttributes>]</a></format>.</para> </remarks> <summary> <attribution license="cc4" from="Microsoft" modified="false" /> <para>Specifies that the public member value be serialized by the <see cref="T:System.Xml.Serialization.XmlSerializer" /> as an encoded SOAP XML element.</para> </summary> </Docs> <Members> <Member MemberName=".ctor"> <MemberSignature Language="C#" Value="public SoapElementAttribute ();" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" /> <MemberType>Constructor</MemberType> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> <AssemblyVersion>4.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue /> <Parameters /> <Docs> <remarks>To be added</remarks> <summary> <attribution license="cc4" from="Microsoft" modified="false" /> <para>Initializes a new instance of the <see cref="T:System.Xml.Serialization.SoapElementAttribute" /> class.</para> </summary> </Docs> </Member> <Member MemberName=".ctor"> <MemberSignature Language="C#" Value="public SoapElementAttribute (string elementName);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string elementName) cil managed" /> <MemberType>Constructor</MemberType> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> <AssemblyVersion>4.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue /> <Parameters> <Parameter Name="elementName" Type="System.String" /> </Parameters> <Docs> <remarks>To be added</remarks> <summary> <attribution license="cc4" from="Microsoft" modified="false" /> <para>Initializes a new instance of the <see cref="T:System.Xml.Serialization.SoapElementAttribute" /> class and specifies the name of the XML element.</para> </summary> <param name="elementName"> <attribution license="cc4" from="Microsoft" modified="false" />The XML element name of the serialized member. </param> </Docs> </Member> <Member MemberName="DataType"> <MemberSignature Language="C#" Value="public string DataType { get; set; }" /> <MemberSignature Language="ILAsm" Value=".property instance string DataType" /> <MemberType>Property</MemberType> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> <AssemblyVersion>4.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.String</ReturnType> </ReturnValue> <Parameters /> <Docs> <value>To be added: an object of type 'string'</value> <remarks> <attribution license="cc4" from="Microsoft" modified="false" /> <para>The following table lists the XML Schema simple data types with their .NET equivalents.</para> <para>For the XML Schema base64Binary and hexBinary data types, use an array of <see cref="T:System.Byte" /> structures, and apply a <see cref="T:System.Xml.Serialization.SoapElementAttribute" /> with the <see cref="P:System.Xml.Serialization.SoapAttributeAttribute.DataType" /> set to "base64Binary" or "hexBinary", as appropriate. For the XML Schema time and date data types, use the <see cref="T:System.DateTime" /> type and apply the <see cref="T:System.Xml.Serialization.SoapElementAttribute" /> with the <see cref="P:System.Xml.Serialization.SoapElementAttribute.DataType" /> set to "date" or "time".</para> <para>For every XML Schema data type that is mapped to a string, apply the <see cref="T:System.Xml.Serialization.SoapElementAttribute" /> with its <see cref="P:System.Xml.Serialization.SoapElementAttribute.DataType" /> property set to the XML Schema type. Note that this does not change the serialization format, only the schema for the member.</para> <block subset="none" type="note"> <para>The property is case-sensitive, so you must set it exactly to one of the XML Schema data types.</para> </block> <block subset="none" type="note"> <para>Passing binary data as an XML element is more efficient than passing it as an XML attribute.</para> </block> <para>For more information about XML data types, see the World Wide Web Consortium (www.w3.org) document, "XML Schema Part 2: Datatypes".</para> <list type="table"> <listheader> <item> <term> <para>XSD data type </para> </term> <description> <para>.NET data type </para> </description> </item> </listheader> <item> <term> <para>anyURI </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>base64Binary </para> </term> <description> <para>Array of <see cref="T:System.Byte" /> objects </para> </description> </item> <item> <term> <para>boolean </para> </term> <description> <para> <see cref="T:System.Boolean" /> </para> </description> </item> <item> <term> <para>byte </para> </term> <description> <para> <see cref="T:System.SByte" /> </para> </description> </item> <item> <term> <para>date </para> </term> <description> <para> <see cref="T:System.DateTime" /> </para> </description> </item> <item> <term> <para>dateTime </para> </term> <description> <para> <see cref="T:System.DateTime" /> </para> </description> </item> <item> <term> <para>decimal </para> </term> <description> <para> <see cref="T:System.Decimal" /> </para> </description> </item> <item> <term> <para>double </para> </term> <description> <para> <see cref="T:System.Double" /> </para> </description> </item> <item> <term> <para>ENTITY </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>ENTITIES </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>float </para> </term> <description> <para> <see cref="T:System.Single" /> </para> </description> </item> <item> <term> <para>gDay </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>gMonth </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>gMonthDay </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>gYear </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>gYearMonth </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>hexBinary </para> </term> <description> <para>Array of <see cref="T:System.Byte" /> objects </para> </description> </item> <item> <term> <para>ID </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>IDREF </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>IDREFS </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>int </para> </term> <description> <para> <see cref="T:System.Int32" /> </para> </description> </item> <item> <term> <para>integer </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>language </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>long </para> </term> <description> <para> <see cref="T:System.Int64" /> </para> </description> </item> <item> <term> <para>Name </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>NCName </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>negativeInteger </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>NMTOKEN </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>NMTOKENS </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>normalizedString </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>nonNegativeInteger </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>nonPositiveInteger </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>NOTATION </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>positiveInteger </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>QName </para> </term> <description> <para> <see cref="T:System.Xml.XmlQualifiedName" /> </para> </description> </item> <item> <term> <para>duration </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>string </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>short </para> </term> <description> <para> <see cref="T:System.Int16" /> </para> </description> </item> <item> <term> <para>time </para> </term> <description> <para> <see cref="T:System.DateTime" /> </para> </description> </item> <item> <term> <para>token </para> </term> <description> <para> <see cref="T:System.String" /> </para> </description> </item> <item> <term> <para>unsignedByte </para> </term> <description> <para> <see cref="T:System.Byte" /> </para> </description> </item> <item> <term> <para>unsignedInt </para> </term> <description> <para> <see cref="T:System.UInt32" /> </para> </description> </item> <item> <term> <para>unsignedLong </para> </term> <description> <para> <see cref="T:System.UInt64" /> </para> </description> </item> <item> <term> <para>unsignedShort </para> </term> <description> <para> <see cref="T:System.UInt16" /> </para> </description> </item> </list> </remarks> <summary> <attribution license="cc4" from="Microsoft" modified="false" /> <para>Gets or sets the XML Schema definition language (XSD) data type of the generated XML element.</para> </summary> </Docs> </Member> <Member MemberName="ElementName"> <MemberSignature Language="C#" Value="public string ElementName { get; set; }" /> <MemberSignature Language="ILAsm" Value=".property instance string ElementName" /> <MemberType>Property</MemberType> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> <AssemblyVersion>4.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.String</ReturnType> </ReturnValue> <Parameters /> <Docs> <value>To be added: an object of type 'string'</value> <remarks>To be added</remarks> <summary> <attribution license="cc4" from="Microsoft" modified="false" /> <para>Gets or sets the name of the generated XML element.</para> </summary> </Docs> </Member> <Member MemberName="IsNullable"> <MemberSignature Language="C#" Value="public bool IsNullable { get; set; }" /> <MemberSignature Language="ILAsm" Value=".property instance bool IsNullable" /> <MemberType>Property</MemberType> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> <AssemblyVersion>4.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Boolean</ReturnType> </ReturnValue> <Parameters /> <Docs> <value>To be added: an object of type 'bool'</value> <remarks> <attribution license="cc4" from="Microsoft" modified="false" /> <para>The XML schema specification for structures allows an XML document to explicitly signal that an element's content is missing. Such an element contains the attribute xsi:null set to "1". For more information, see the World Wide Web Consortium (www.w3.org) specification named "XML Schema Part 1: Structures".</para> <para>If the <see cref="P:System.Xml.Serialization.SoapElementAttribute.IsNullable" /> property is set to true, the xsi:null attribute is generated for class members that have been set to null. For example, if you set a field named MyStringArray to null, the <see cref="T:System.Xml.Serialization.XmlSerializer" /> generates the following XML code.</para> <code> <MyStringArray xsi:null = "1" /></code> <para>If the <see cref="P:System.Xml.Serialization.XmlElementAttribute.IsNullable" /> property is false, no XML element is generated.</para> <block subset="none" type="note"> <para>You cannot apply the <see cref="P:System.Xml.Serialization.XmlElementAttribute.IsNullable" /> property to a member typed as a value type because a value type cannot contain null.</para> </block> </remarks> <summary> <attribution license="cc4" from="Microsoft" modified="false" /> <para>Gets or sets a value that indicates whether the <see cref="T:System.Xml.Serialization.XmlSerializer" /> must serialize a member that has the xsi:null attribute set to "1".</para> </summary> </Docs> </Member> </Members> </Type>