이 페이지가 유용했습니까?
이 콘텐츠에 대한 여러분의 의견은 중요합니다. 의견을 알려주십시오.
추가 의견
1500자 남음
MSDN Library
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

DataMemberAttribute 클래스

2013-12-13

형식의 멤버에 적용된 경우 멤버가 데이터 계약에 포함되고 DataContractSerializer에서 직렬화될 수 있도록 지정합니다.

System.Object
  System.Attribute
    System.Runtime.Serialization.DataMemberAttribute

Namespace:  System.Runtime.Serialization
어셈블리:  System.Runtime.Serialization(System.Runtime.Serialization.dll)

[AttributeUsageAttribute(AttributeTargets.Field|AttributeTargets.Property, Inherited = false, 
	AllowMultiple = false)]
public sealed class DataMemberAttribute : Attribute

DataMemberAttribute 형식에서는 다음과 같은 멤버를 노출합니다.

  이름설명
Public 메서드DataMemberAttributeDataMemberAttribute 클래스의 새 인스턴스를 초기화합니다.
맨 위

  이름설명
Public 속성EmitDefaultValue직렬화 중인 필드 또는 속성의 기본값을 직렬화할지 여부를 지정하는 값을 가져오거나 설정합니다.
Public 속성IsRequired멤버를 역직렬화 중인 경우 직렬화된 데이터에 해당 멤버가 있어야 하는지 여부를 직렬화 엔진에 지시하는 값을 가져오거나 설정합니다.
Public 속성Name데이터 멤버 이름을 가져오거나 설정합니다.
Public 속성Order멤버의 직렬화 및 역직렬화 순서를 가져오거나 설정합니다.
맨 위

  이름설명
Public 메서드Equals인프라입니다. 이 인스턴스가 지정된 개체와 같은지 여부를 나타내는 값을 반환합니다. (Attribute에서 상속됨)
Protected 메서드Finalize가비지 수집기에서 Object를 회수하기 전에 개체가 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨)
Public 메서드GetHashCode해당 인스턴스에 대한 해시 코드를 반환합니다. (Attribute에서 상속됨)
Public 메서드GetType현재 인스턴스의 Type을 가져옵니다. (Object에서 상속됨)
Public 메서드Match파생 클래스에서 재정의된 경우 이 인스턴스가 지정된 개체와 같은지 여부를 나타내는 값을 반환합니다. (Attribute에서 상속됨)
Protected 메서드MemberwiseClone현재 Object의 단순 복사본을 만듭니다. (Object에서 상속됨)
Public 메서드ToString현재 개체를 나타내는 문자열을 반환합니다. (Object에서 상속됨)
맨 위

DataMemberAttribute 특성을 DataContractAttribute와 함께 적용하여 데이터 계약에 포함된 형식의 멤버를 식별합니다. 데이터 계약을 직렬화할 수 있는 직렬 변환기 중 하나는 DataContractSerializer입니다.

Windows Phone의 데이터 계약 모델은 옵트아웃 모델입니다. 즉, IgnoreDataMemberAttribute를 필드나 속성에 명시적으로 적용하여 멤버 값이 직렬화되지 않도록 지정하지 않으면 기본적으로 멤버가 직렬화됩니다.

기본적으로 CLR 멤버 이름이 데이터 멤버 이름으로 사용됩니다. Name 속성을 설정하면 데이터 멤버의 이름을 사용자 지정할 수 있습니다. 이 속성을 사용하여 CLR 멤버 이름으로 허용되지 않는 이름을 제공할 수 있습니다. DataContractSerializer를 사용하여 XML로 매핑하는 경우 이 이름은 형식의 스키마 요소 이름으로 사용됩니다.


	    // Define the data contract.
    	[DataContract(Name = "Customer" , Namespace = "http://www.contoso.com" ) ]
    	public class User
    	{
        	[DataMember(Name = "Last" , EmitDefaultValue = true , IsRequired = true , Order = 2 )]
       		public string Name { get; set; }

        	[DataMember(Order = 1)]
        	public int Age { get; set; }

        	public User() { }

        	public User(string newName, int newAge)
        	{
            		Name = newName;
            		Age = newAge;
        	}
    	}


Windows Phone OS

지원되는 버전: 8.0, 7.1, 7.0

Windows Phone

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

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

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