如何通过 Linq 解组 XML



好的,假设一些XML,例如:

<Result>
 <Value>
  <Foo>1</Foo>
  <Bar>1</Bar>
 </Value>
 <OK>true</OK>
</Result>

还有一些类:

class ResultValue
{
  public int foo;
  public int bar;
  public ResultValue() {}
}
class Result
{
  public bool ok;
  public ResultValue value;
  public Result() {}
}

如何创建/填充 Result 对象,包括其值成员?

我做到了

from x in source.Elements()
where ((int)x.Element("Value").Element("Foo") == 1)
select new Result()
{
    ok = (bool) x.Element("OK"), // ok, I understand as far as this!
    // what goes here, to fill .value?
};

真的很感激你不仅解释我需要什么代码,而且解释"为什么",因为我发现语法"有点"令人困惑:-P(实际上,如果你能指出我一个体面的入门,这将是一个很大的帮助,我找不到任何比平面结构更基本的东西)。

你看过xml序列化吗?可能更适合您的需求

相关内容

  • 没有找到相关文章

最新更新