簡體   English   中英

從SQL Server創建具有xml數據類型的XDocument

[英]Create XDocument with xml datatype from SQL Server

我有此表:ID | FILE

1 | ROOT> ELEMENT TYPE =“ DATABASE” CNNSTR =“ Data Source =(local); Initial Catalog = testForDLL; Integrated Security = SSPI; Persist Security Info = False;” QUERY =“ SELECT * FROM TBL1 WHERE id = 1” /> ROOT>

2 | ROOT ELEMENT TYPE =“ DATABASE” CNNSTR =“數據源=(本地);初始目錄= testForDLL;集成安全性= SSPI;持久安全性信息= False;” QUERY =“ SELECT * FROM TBL2 WHERE id = 1” /> ROOT>

我想從第二列加載值,並使用它創建一個XDOCUMENT。 到目前為止,我有此代碼:

using (SqlConnection conn = new SqlConnection(cnnstr))
            {
                conn.Open();
                SqlCommand com = conn.CreateCommand();

                com.CommandText = "SELECT [FILE] FROM XML_Config WHERE id=" + id;
                XDocument doc2 = new XDocument();

                XmlReader dtRead = com.ExecuteXmlReader();

                if (dtRead.Read())
                    doc2.Load(dtRead); -> This line has an error
            }

問任何您想幫助我的事情。

我想我用這段代碼解決了問題。

using (SqlConnection conn = new SqlConnection(cnnstr))
            {
                string xmlstr;
                conn.Open();
                SqlCommand com = conn.CreateCommand();

                com.CommandText = "SELECT [FILE] FROM XML_Config WHERE id=" + id;

                SqlDataReader dtRead = com.ExecuteReader();

                while (dtRead.Read())
                    xmlstr= dtRead.GetSqlString(0).ToString();
                XDocument docBD = XDocument.Parse(xmlstr);

                return docBD;
            }

您認為這是最好的解決方案嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM