2013-05-14 6 views
1

에서 주문을 제거 WCF 서비스에 XML에서 매개 변수를 전달하면서가 DataMember를

[DataMember(Name = "Name", Order = 2)] 
... 
[DataMember(Name = "ID", Order = 1)] 
... 
+0

Erm ... 사용하지 않습니까? –

+0

다음 몇 가지 매개 변수에 대한 값이 null로오고 .. 나는 그것이 어떤 순서와도 독립적이되고 싶습니다 – user2380441

답변

2

없음 당신이 경우 주문 DataMemberAttribute를 사용하여 피할 수있는 방법이 없습니다 DataMember를에 주문 속성을 사용하지 않도록하기 위해 사용 될 수 있나요 serializer가 예상하는 순서와 다른 순서로 멤버를 전달합니다. 주문에 대한

규칙은 여기에 설명되어 있습니다 :

http://msdn.microsoft.com/en-us/library/ms729813.aspx 데이터 순서에 대한 기본 규칙은 다음과 같습니다

  • 데이터 계약 유형이 상속 계층 구조의 일부인 경우, 기본 유형의 데이터 멤버는 항상 순서대로 첫 번째입니다.
  • 다음은 DataMemberAttribute 특성 집합의 Order 속성이없는 현재 형식의 데이터 멤버입니다 (알파벳 순서는 ).
  • 다음은 DataMemberAttribute 특성 집합의 Order 속성을 가진 모든 데이터 멤버입니다. 이 값은 Order 값으로 정렬 한 다음 특정 Order 값의 한 구성원 인 이상인 경우 사전 순으로 정렬됩니다. 주문 값은 건너 뛸 수 있습니다. 당신은 시리얼이 그들을 건너 뜁니다로 다음 null 값을 얻을 것이다이 규칙을 따르지 않는 멤버를 전달하면

. 나는 그것이 위대하지 않다는 것을 안다. 그러나 이것은 불행하게도 그것이 일하는 방식이다.

+0

, 고마워요. – user2380441

+0

당신의 질문에 대답 해 주시겠습니까? –