您的位置:首页 > 其它

LinQ To XML——LinQ To XML结合LinQ to Server使用

2011-03-28 11:19 274 查看
在是用LINQ的时候可以把多个数据源混合。

下面是用LINQ to SQL 查询 Northwind数据库中的表结果再把提取的结果转换成XML文档。

建立一个Northwind.dbml 详细可以看LINQ to SQL





从服务器资源管理器拖动两个表到设计器中,设计器结果如下,并自动建立关联





代码如下:

public void MyLingSqlAndXml()
{

NorthwindDataContext dc = new NorthwindDataContext();

XElement xe = new XElement("Customers", //根元素
from c in dc.Customers  //查询数据库的结果
select new XElement("Customer", //建立新的XML元素
new XElement("CustomerId", c.CustomerID), //元素的每一条子元素
new XElement("CompanyName", c.CompanyName),
new XElement("Country", c.Country),
new XElement("OrderNum", c.Orders.Count))
);

xe.Save(@"C:\myCustomers.xml");
Response.Write("File created");
}


运行以上代码,会在C盘根目录生成一个XML文件,部分内容如下:

<?xml version="1.0" encoding="utf-8"?>
<Customers>
<Customer>
<CustomerId>ALFKI</CustomerId>
<CompanyName>Alfreds Futterkiste</CompanyName>
<Country>Germany</Country>
<OrderNum>6</OrderNum>
</Customer>
<Customer>
<CustomerId>ANATR</CustomerId>
<CompanyName>Ana Trujillo Emparedados y helados</CompanyName>
<Country>Mexico</Country>
<OrderNum>4</OrderNum>
</Customer>
<Customer>
<CustomerId>ANTON</CustomerId>
<CompanyName>Antonio Moreno Taquería</CompanyName>


         <Country>Mexico</Country>

  <OrderNum>7</OrderNum>        

</Customer>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: