I have a list of String
List<String> lst=new List<String>{"A","B","C"}
And an xml file like
<Root>
<ChildList>
<Childs>
<Child Name="a1" Val="A"/>
<Child Name="a2" val="A"/>
<Child Name="b1" val="B"/>
</Childs>
</ChildList>
</Root>
i need to read contets of the xml file and add to a dictionary
Dictionary<String,List<String>> dict
where the dictionary key is the items in the “lst” and value is the attribute value of “Name” from the file
So the result will be like
Key(String) Value(List<String>)
"A" "a1","a2"
"B" "b1"
"C" null
now i’m using nested for loop for this
Is there any wau to do this using LINQ to XML
Thanks in advance
I think this will do it:
Using a helper method:
If you don’t mind having an empty list instead of
nullfor items which aren’t in the XML file, the second statement can be simplified, with no need for the helper method:Note that I’ve structured this so that it only needs to go through the XML file once, instead of searching through the file once for each element in the list.