내보내기(0) 인쇄
모두 확장

XmlIgnoreAttribute 클래스

업데이트: 2007년 11월

XmlSerializerSerialize 메서드를 호출하여 공용 필드 또는 공용 읽기/쓰기 속성 값을 serialize하지 않도록 합니다.

네임스페이스:  System.Xml.Serialization
어셈블리:  System.Xml(System.Xml.dll)

[AttributeUsageAttribute(AttributeTargets.Property|AttributeTargets.Field|AttributeTargets.Parameter|AttributeTargets.ReturnValue)]
public class XmlIgnoreAttribute : Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Property|AttributeTargets.Field|AttributeTargets.Parameter|AttributeTargets.ReturnValue) */
public class XmlIgnoreAttribute extends Attribute
public class XmlIgnoreAttribute extends Attribute

XmlSerializer가 개체를 serialize 및 deserialize하는 방식을 제어하는 특성 패밀리에 속한 XmlIgnoreAttribute입니다. 클래스의 멤버에 XmlIgnoreAttribute를 적용하면 XmlSerializer는 클래스의 인스턴스를 serialize하거나 deserialize할 때 해당 멤버를 무시합니다. 유사한 특성에 대한 전체 목록은 XML Serialization을 제어하는 특성을 참조하십시오.

XmlAttributes 개체를 만들고 XmlIgnore 속성을 false로 설정하여 XmlIgnoreAttribute로 인해 발생하는 동작을 재정의할 수 있습니다. XmlAttributeOverrides 클래스의 인스턴스에 XmlAttributes 개체를 Add해야 합니다. 마지막으로, Serialize 또는 Deserialize 메서드를 호출하기 전에 XmlAttributeOverrides 개체를 사용하여 XmlSerializer 클래스의 인스턴스를 구성해야 합니다.

스키마 파일(.xsd)에서 클래스를 만들 때 XML 스키마 정의 도구(Xsd.exe)를 호출하면 경우에 따라 XmlIgnoreAttribute가 생성됩니다. 이 동작은 값 형식을 null로 설정할 수 없으나 모든 XML 데이터 형식은 이 값으로 설정할 수 있기 때문에 발생합니다. 따라서 이 도구는 값 형식에 매핑되는 XML 형식이 있을 경우 값을 보유하는 필드 하나와 fieldnameSpecified의 폼을 가져오는 또 하나의 특수 필드를 만듭니다. 여기서 fieldname은 필드 또는 속성의 이름으로 바뀝니다. 그러나, 이 특수 필드는 요소에 최소 발생 수가 없음이 스키마에 지정되고(minOccurs = "0") 요소에 기본값이 없는 경우에만 생성됩니다. XmlSerializer는 이 특수 필드를 설정하고 확인하여 필드 또는 속성에 대해 값이 설정되어 있는지 여부를 알아 냅니다. 이 특수 필드는 serialize되면 안되므로 해당 도구는 이 필드에 XmlIgnoreAttribute를 적용합니다.

특성 사용에 대한 자세한 내용은 특성을 사용하여 메타데이터 확장을 참조하십시오.

참고:

XmlIgnoreAttribute 대신 XmlIgnore라는 단어를 코드에서 사용할 수 있습니다.

다음 예제에서는 Comment 필드를 포함하는 Group 클래스를 보여 줍니다. 이 예제에서는 필드에 XmlIgnoreAttribute를 할당하여 XmlSerializer가 클래스의 인스턴스를 serialize하거나 deserialize할 때 해당 필드를 무시하도록 합니다.

public class Group
{
   // The XmlSerializer ignores this field.
   [XmlIgnore]
   public string Comment;

   // The XmlSerializer serializes this field.
   public string GroupName;
}



public class Group
{
    // The XmlSerializer ignores this field.
    /** @attribute XmlIgnore()
     */
    public String comment;
    // The XmlSerializer serializes this field.
    public String groupName;
} //Group


System.Object
  System.Attribute
    System.Xml.Serialization.XmlIgnoreAttribute

이 형식의 모든 공용 static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360

.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

.NET Framework

3.5, 3.0, 2.0, 1.1, 1.0에서 지원

.NET Compact Framework

3.5, 2.0, 1.0에서 지원

XNA Framework

2.0, 1.0에서 지원

커뮤니티 추가 항목

추가
Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
표시:
© 2014 Microsoft