[英]How to loop through xml string in razor
我有一個看起來像這樣的xml字符串
<row Name="analog.__VG_SPP3_SFRTPCT" />
<row Name="analog._3305_LIST210_1" />
<row Name="analog._AG_5340_PR14AN" />
<row Name="analog._AG_EPNT_2" />
<row Name="analog._AG_EPNT_SP" />
<row Name="analog._AG_MERC_ERXTES" />
<row Name="analog._AG_ROC_TEST" />
<row Name="analog._AG_ROM1_LOAD" />
<row Name="analog._AG_TEST_CRC1LT" />
<row Name="analog._AG_TEST_CRC1RT" />
<row Name="analog._CWAV_TST_MDP1CV" />
<row Name="analog._CWAV_TST_MDP1CV_LIST" />
嘗試為javascript中顯示的組合框生成選項列表,我試圖在razor中循環遍歷xml字符串以生成它,但是我不確定如何或甚至可能通過拆分來完成此操作xml轉換為單獨的數據結構,然后再次在剃刀中遍歷該數據結構。 但是出於性能原因,一次完成此操作將是一件很不錯的事情。
@model string
@{
Response.ContentType = "text/xml";
Layout = null;
}
<complete>
<option value=""><![CDATA[ ]]></option>
@foreach (var row in @Model)
{
<option value="@(row.Name)">@(row.Name)</option>
}
</complete>
為了完整起見,這是我最終在剃須刀中所做的事情,謝謝。 我在控制器端用封裝了輸出xml字符串,然后將其插入ComboData結構中,當數據太大時,剃刀顯然遇到了純字符串問題。
控制器:
var Names = "<rows>" + oService.Names(ID) + "</rows>";
var oComboData = new ComboData(Names);
return View("ComboData", oComboData);
視圖模型:
public class ComboData
{
public ComboData(string sString)
{
xdoc = new XmlDocument();
xdoc.LoadXml(sString);
}
public XmlDocument xdoc { get; set; }
}
視圖:
@using System.Xml
@using ViewModels;
@model ComboData
@{
Response.ContentType = "text/xml";
Layout = null;
}
<complete>
<option value=""><![CDATA[ ]]></option>
@foreach (XmlNode node in Model.xdoc.DocumentElement.ChildNodes)
{
<option value="@(node.Attributes[0].Value)">@(node.Attributes[0].Value)</option>
}
</complete>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.