그래서 저는 Dictionary of Users와 ControlNumbers를 가져 와서 XML로 출력하는 다음과 같은 기능을 가지고 있습니다. 이 작업을 아주 잘 수행 한 온라인 LINQ를 찾았습니다. 하지만 작은 문제가 하나 있습니다.XML 사전
<root>
<adolan>792365</adolan>
<afeazell>791964</afeazell>
<amsmith>790848</amsmith>
<asnyder>790948789358</asnyder>
</root>
을하지만 당신이 볼 수 있듯이, ControlNumbers는 (단이 경우 항상하지 않습니다) 일반적으로 6 자리입니다
static Dictionary<string, User> UserClassDict = new Dictionary<string, User>();
static void DictionaryToXML(Dictionary<string,User> UserClassDict)
{
XElement el = new XElement("root", UserClassDict.Select(kv => new XElement(kv.Key, kv.Value.ControlNumber
)));
}
XML은 다음과 같습니다. 제가하고 싶은 것은 이것과 비슷한 것입니다.
<root>
<adolan>
<controlNumbers>123456</controlNumbers>
</adolan>
<asnyder>
<controlNumbers>222111</controlNumbers>
<controlNumbers>333222</controlNumbers>
</asnyder>
</root>
결국 나는 프로그램이 시작에서이 XML 파일을 읽고 사전 그래서이 XML 결국 꽤 큰 얻을 것이다 채울 수있을 것이다. 어떤 아이디어라도 도움이 될 것입니다.
을 시도 사용하여 연결하는? –
ControlNumbers는 USER 클래스의 목록에 저장됩니다. 그래서, 귀하의 질문을 이해하면, 그들은 사용자 클래스 안에있는 목록 안에 저장됩니다. –
MaylorTaylor
사이드 노트 : XML 스키마가 차선책 (혹은 간단하지 않음)입니다 : 사용자 이름을 노드 이름으로 사용하면 길을 잃을 때 많은 고통을 줄 수 있습니다 (ASCII가 아닌 이름 ...) - 대신 속성을 고려하십시오. 목록을 쉼표로 구분 된 문자열로 직렬화하는 것은 데이터를 본질적으로 두 번 구문 분석해야하므로 편리하지 않습니다. 한 번 XML로, 둘째로 문자열의 시퀀스로 요소의 순서가 더 좋을 수 있습니다. –