日期:2014-05-20 浏览次数:20889 次
<?xml version="1.0" encoding="gb2312" ?> <root> <price> <pric>01</pric> <pri>01</pri> </price> <price> <pric>02</pric> <pri>02</pri> </price> <price> <pric>03</pric> <pri>03</pri> </price> <price> <pric>04</pric> <pri>04</pri> </price> </root>
<?xml version="1.0" encoding="gb2312" ?> <root> <price> <pri>i01</pri> <name>第一个</name> </price> <price> <pri>02</pri> <name>第二个</name> </price> <price> <pri>03</pri> <name>第三个</name> </price> <price> <pri>04</pri> <name>第四个</name> </price> </root>
static void Excute() { XDocument xd = XDocument.Load("name.xml"); XDocument dx = XDocument.Load("price.xml"); var result = from x in xd.Elements() join d in dx.Elements() on x.Element("pri").Value equals d.Element("pri").Value select new { pre = d.Element("pric").Value, name = x.Element("name").Value }; foreach (var o in result) { Console.WriteLine(o.name + " " + o.pre); } }
static void Excute() { XDocument xd = XDocument.Load("name.xml"); XDocument dx = XDocument.Load("price.xml"); var result = from x in xd.Descendants("price") join d in dx.Descendants("price") on x.Element("pri").Value equals d.Element("pri").Value select new { pre = d.Element("pric").Value, name = x.Element("name").Value }; foreach (var o in result) { Console.WriteLine(o.name + " " + o.pre); } }
------解决方案--------------------
static void Excute() { XDocument xd = XDocument.Load("name.xml"); XDocument dx = XDocument.Load("price.xml"); var result = from x in xd.Descendants("price") join d in dx.Descendants("price") on x.Element("pri").Value equals d.Element("pri").Value select new { pre = d.Element("pric").Value, name = x.Element("name").Value }; foreach (var o in result) { Console.WriteLine(o.name + " " + o.pre); } }