0

設定:

データベース(SQL Server 2008 R2)にいくつかのxmlデータが格納されており、ストアドプロシージャを介して取得され、DataTableに配置されます。DataTableには、DateTime「timestamp」とXML「info」の2つの列があります。

このデータをデータベースから取得した後、各行をループして、C#でLINQtoXMLを使用してデータを操作したいと思います。

public static void ParseDataTable(DataTable dataTable)
{
    for (int r = 0; r < dataTable.Rows.Count; r++)
    {
        // dataTable.Rows[r]["timestamp"].ToString() holds DateTime
        // dataTable.Rows[r]["info"].ToString() holds XML
    }
}

私の質問:

このデータをLINQを使用できるオブジェクトに取り込む最も簡単な方法は何ですか?どのタイプのオブジェクトを使用する必要がありますか?

さらに:

  • xmlがデータベースに保存されている理由を尋ねたり、別のストレージメディアを推奨したりしないでください。聖戦を始めようとはしていません。
  • xmlを別のタイプ(たとえば)として返す必要がある場合は、CAST([info] AS VARCHAR(MAX))お知らせください。
  • オブジェクトが利用可能になったら、LINQを使用してオブジェクトを解析したいので、他の方法はお勧めしません。

前もって感謝します。

4

1 に答える 1

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

そして、あなたは離れてlinqすることができます

于 2012-10-29T18:36:59.650 に答える