XmlAttributeAttribute.Form 属性

定义

获取或设置一个值,该值指示 XmlSerializer 生成的 XML 属性名称是否是限定的。

public:
 property System::Xml::Schema::XmlSchemaForm Form { System::Xml::Schema::XmlSchemaForm get(); void set(System::Xml::Schema::XmlSchemaForm value); };
public System.Xml.Schema.XmlSchemaForm Form { get; set; }
member this.Form : System.Xml.Schema.XmlSchemaForm with get, set
Public Property Form As XmlSchemaForm

属性值

XmlSchemaForm

XmlSchemaForm 值之一。 默认值为 XmlForm.None

示例

以下示例将 XmlAttributeAttribute 类中包含的两个字段应用于该字段。

public ref class Vehicle
{
public:

   [XmlAttributeAttribute(Form=XmlSchemaForm::Qualified)]
   String^ Maker;

   [XmlAttributeAttribute(Form=XmlSchemaForm::Unqualified)]
   String^ ModelID;
};
public class Vehicle
{
   [XmlAttribute(Form = XmlSchemaForm.Qualified)]
   public string Maker;

   [XmlAttribute(Form = XmlSchemaForm.Unqualified)]
   public string ModelID;
}
Public Class Vehicle
    <XmlAttribute(Form := XmlSchemaForm.Qualified)> _
    Public Maker As String    

    <XmlAttribute(Form := XmlSchemaForm.Unqualified)> _
    Public ModelID As String
End Class

注解

Form 属性确定 XML 元素是限定还是未限定。 该 Form 属性符合 1999 http://www.w3.org 规范 Namespaces in XML

Namespace如果该属性设置为任何值,则尝试将属性XmlSchemaForm.Unqualified设置为Form引发异常。

默认设置 XmlSchemaForm.None指示 XmlSerializer 检查 XML 文档的架构以确定命名空间是否限定。 如果架构未为单个元素或属性指定值,则 XmlSerializer 使用 elementFormDefaultattributeFormDefault 值来确定元素或属性是否限定。 以下 XML 代码显示架构:

<schema elementFormDefault="qualified"   
attributeFormDefault="unqualified"... >  
   <element name="Name"/>  
   <attribute name="Number"/>  
</schema>  

读取XmlSerializer架构时,Form两者的值Name``XmlSchemaForm.None``Number都是限定的,但Name元素是限定的,而Number元素则不合格。

适用于