2011-02-15 4 views
2

IEnumerable<KeyValuePair<String, Object>> 유형의 객체를 직렬화하는 방법을 보여주십시오. 이 개체에는 사용자 지정 구조체가 포함되어 있지 않지만 IEnumerable<KeyValuePair<String, Object>>의 다른 개체 (값)를 포함 할 수는 있습니다 (반드시 포함 할 필요는 없습니다). 간단히 말해 사전이나 다른 일반적인 유형의 계층 구조입니다. 내가 직렬화하는 동안 내 자신의 산책을 작성할 수 있지만 어쩌면 가장 짧은 방법을 보여줄거야;)사전의 C# 계층 구조를 XML 문자열로 변환 하시겠습니까?

감사합니다 !!! 당신이 XmlSerializer를 당신의 "개체"를 제공하여 시도 할 수

답변

1

직렬화 가능합니다. XML Serializer가 이와 같은 것을 이해하지 못한다.

LINQ to XML을 사용하십시오 - 가장 단순합니다.

+0

감사합니다. 직접하겠습니다.) – Edward83

2

내가 수동으로 수행 할

IEnumerable<KeyValuePair<String, Object>> data = LoadData(); // however you populate your collection 
var dataAsList = data.ToList(); 
XmlSerializer serializer = new XmlSerializer(dataAsList.GetType()); 
StringWriter sw = new StringWriter(); 
serializer.Serialize(sw,dataAsList); 
var xml = sw.ToString(); 
... 
... 
관련 문제