C# XML-从SQL Server到LINQ再到XML

C# XML-从SQL Server到LINQ再到XML,c#,xml,linq-to-xml,C#,Xml,Linq To Xml,设置: 我将一些xml数据存储在一个数据库(SQLServer2008R2)中,该数据库通过存储过程检索并放入一个数据表中。DataTable有两列:DateTime“timestamp”和XML“info” 从数据库中提取这些数据后,我想循环遍历每一行,并使用C#中的LINQ to XML对数据进行操作 publicstaticvoidparsedatatable(DataTable) { for(int r=0;r

设置:

我将一些xml数据存储在一个数据库(SQLServer2008R2)中,该数据库通过存储过程检索并放入一个数据表中。DataTable有两列:DateTime“timestamp”和XML“info”

从数据库中提取这些数据后,我想循环遍历每一行,并使用C#中的LINQ to XML对数据进行操作

publicstaticvoidparsedatatable(DataTable)
{
for(int r=0;r
我的问题:

将这些数据放入可以使用LINQ的对象的最简单方法是什么?应该使用什么类型的对象

此外:

  • 请不要询问为什么xml存储在数据库中,也不要推荐其他存储介质。不想发动一场圣战
  • 如果xml应该以不同类型返回(例如,
    CAST([info]as VARCHAR(MAX))
    ),请告诉我
  • 我宁愿使用LINQ来解析对象,一旦我有了它,所以请不要推荐其他方法
提前谢谢

XDocument doc = XDocument.Parse(dataTable.Rows[r]["info"].ToString());

然后你就可以

这么简单了!非常感谢。我没有偶然发现XDocument.Parse(),这使得这个过程非常简单。另外,链接回Jon Skeet的答案-总是好的:DIt最好使用
XElement.Parse
,除非所讨论的XML是完整文档——请参阅和。
XDocument doc = XDocument.Parse(dataTable.Rows[r]["info"].ToString());