您的XML格式不正確。我相信這就是你的XML看起來的樣子?
<lst name="industry">
<int name="Accounting">3</int>
<int name="Engineering">0</int>
<int name="Human Resources and Adminstration">0</int>
<int name="Software/IT">0</int>
</lst>
對於這種情況,你可以做..
XDocument result = XDocument.Load(new StringReader("<lst name=\"industry\">" +
"<int name=\"Accounting\">3</int>" +
"<int name=\"Engineering\">0</int>" +
"<int name=\"Human Resources and Adminstration\">0</int>" +
"<int name=\"Software/IT\">0</int>" +
"</lst>"));
var tmpTable = (from i in result.Descendants("int")
select new
{
Key = i.Attribute("name"),
Value = i.Value
}).ToDictionary(t => t.Key, t => t.Value);
可能的重複項:http://stackoverflow.com/questions/670563/linq-to-read- xml – Craig 2012-04-04 11:25:51