簡體   English   中英

如何在網格中的 ascx 頁面上顯示 XML 字符串

[英]How to display XML string on the ascx page in a grid

我有一個 object,它獲取了存儲在數據庫中的 xml 數據,比如 dataset.xmlcontent。 我想在 UI 上顯示所有 xmlcontent,這是一個字符串,但由於數據中嵌入了 xml 標簽,因此無法解析數據。

任何輸入我應該如何進行?

model 中的代碼在此處獲取信息:

dataSet=orderRepo.GetOrderItemDatas().Where(o => orderItem.Contains(o.OrderItemId)).Select(o=>o).ToList();

dataSet.Xmlcontent 將 XML 數據存儲為字符串,我試圖在 UI 上顯示它

ascx 頁面中的代碼:

            <tr>
                <th class="ui-state-default">TN</th>
                <th class="ui-state-default">Provisioning Data</th>
            </tr>
            <%
    if (Model.orderdataExist)
    {
        foreach (SomeObject detail in Model.dataSet)
        {
            %>
            <tr >
                <td><%= detail.TN %></td>
                <td><%= detail.Xmlcontent.ToString() %></td>

            </tr>
            <%
        }
    }
            %>

        </table> 

用戶界面上的 output 是:

用戶界面上的 XML 內容

如何解析此 XML 內容以顯示在 UI 上?

放入數據表,然后您可以將表綁定到您的頁面

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Linq;
using System.Data;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {

            string xmlResponseFromDb =  "<?xml version=\"1.0\"?>" +
                                            "<Table>" +
                                               "<DataRow>" +
                                                    "<TN>6462308635</TN>" +
                                                    "<Provision_Data>6462308635services_options_cosmo_callrecordingasc840</Provision_Data>" +
                                               "</DataRow>" +
                                               "<DataRow>" +
                                                    "<TN>6462308635</TN>" +
                                                    "<Provision_Data>6462308635services_options_cosmo_callrecordingascspeechanalytics840</Provision_Data>" +
                                               "</DataRow>" +
                                            "</Table>";

            XDocument doc = XDocument.Parse(xmlResponseFromDb);

            DataTable dt = new DataTable();
            dt.Columns.Add("TN", typeof(string));
            dt.Columns.Add("Provision_Data", typeof(string));

            foreach (XElement row in doc.Descendants("DataRow"))
            {
                dt.Rows.Add(new object[] { (string)row.Element("TN"), (string)row.Element("Provision_Data") });
            }

        }
    }

}

暫無
暫無

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

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