2009-08-10 2 views

답변

54

네임 스페이스 XmlElement 속성을 사용하여 각 필드에 필요한 네임 스페이스를 지정해야합니다. 이렇게하면 특정 네임 스페이스와 필드를 연결할 수 있지만 접두사 연결을 얻으려면 XmlNamespaceDeclarations 유형을 반환하는 클래스의 속성을 노출해야합니다.

참조 문서 및 샘플 아래 :

그것 뿐이다
[XmlRoot(ElementName="person")] 
    public class Person 
    { 

     [XmlElement(Namespace="http://example.com")] 
     public string fname; 

     [XmlElement(Namespace="http://sample.com")] 
     public string lname; 

     [XmlNamespaceDeclarations] 
     public XmlSerializerNamespaces xmlns = new XmlSerializerNamespaces(); 

     public Person() 
     { 
      xmlns.Add("a", "http://example.com"); 
      xmlns.Add("b", "http://sample.com"); 
     } 
    } 
+0

, 감사합니다! –

+1

다른 사람들을위한 하나의 메모는 비록 내가 여전히 좋은 연습이라고 여길지라도 XmlSerializerNamespaces가 꼭 직렬화를 수행 할 필요는없는 것으로 보인다. –

+1

전설이 나이를 찾고 있습니다! – jcvandan

관련 문제