發(fā)表日期:2018-12-20 文章編輯:南昌開優(yōu)網(wǎng)絡(luò) 瀏覽次數(shù):4244 標(biāo)簽:XML
XML示例:
<?xml version="1.0" encoding="utf-8"?>
<Response>
<ResultContent>成功</ResultContent>
<ResultCode>0</ResultCode>
<SFZH>aaaaaaaa</SFZH>
<TJID>體檢ID</TJID>
<XM>姓名</XM>
<XB>性別</XB>
<CSNY>出生</CSNY>
<ZHXMMC></ZHXMMC>
<ExamItemList>
<ExamItem>
<KSBM>YB</KSBM>
<KSMC>一般檢查</KSMC>
<SFXMDM>176</SFXMDM>
<SFXMMC>一般檢查(身高、體重、血壓)</SFXMMC>
<IMAGE>0</IMAGE>
<Dcotor>醫(yī)生</Dcotor>
<CheckDate>2018/10/23 10:05:08</CheckDate>
<MX>
<XXDM>010117</XXDM>
<XXMC>其他</XXMC>
<ItemResult>未見明顯異常</ItemResult>
<ItemUnit>
</ItemUnit>
<DefValue>
</DefValue>
<Flag>
<AA>測(cè)試3層A</AA>
<BB>測(cè)試3層B</BB>
</Flag>
</MX>
<MX>
<XXDM>010109</XXDM>
<XXMC>舒張壓</XXMC>
<ItemResult>65</ItemResult>
<ItemUnit>mmHg</ItemUnit>
<DefValue>
</DefValue>
<Flag>
</Flag>
</MX>
<MX>
<XXDM>010105</XXDM>
<XXMC>體重指數(shù)</XXMC>
<ItemResult>20.03</ItemResult>
<ItemUnit>
</ItemUnit>
<DefValue>
</DefValue>
<Flag>
</Flag>
</MX>
</ExamItem>
<ExamItem>
<KSBM>HY</KSBM>
<KSMC>化驗(yàn)室</KSMC>
<SFXMDM>024</SFXMDM>
<SFXMMC>尿液分析</SFXMMC>
<IMAGE>0</IMAGE>
<Dcotor>醫(yī)生</Dcotor>
<CheckDate>2018/10/23 0:00:00</CheckDate>
<MX>
<XXDM>030206</XXDM>
<XXMC>隱血</XXMC>
<ItemResult>陰性</ItemResult>
<ItemUnit>
</ItemUnit>
<DefValue>陰性</DefValue>
<Flag>
</Flag>
</MX>
<MX>
<XXDM>030205</XXDM>
<XXMC>比重SG</XXMC>
<ItemResult>1.025</ItemResult>
<ItemUnit>
</ItemUnit>
<DefValue>1.003-1.030</DefValue>
<Flag>
</Flag>
</MX>
<MX>
<XXDM>030204</XXDM>
<XXMC>維生素C</XXMC>
<ItemResult>陰性</ItemResult>
<ItemUnit>
</ItemUnit>
<DefValue>陰性</DefValue>
<Flag>
</Flag>
</MX>
</ExamItem>
</ExamItemList>
<JCJG>
1. 一般檢查結(jié)論:<br /><br />內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容<br /><br />2. 內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容:<br /><br />
</JCJG>
<ZJJL>
【1. 膀胱顯示不清】<br /><br />【2. 紅細(xì)胞計(jì)數(shù)RBC偏低】<br />
</ZJJL>
<JKJY>
【1. 內(nèi)容內(nèi)容】<br />內(nèi)容內(nèi)容內(nèi)容內(nèi)容,<br /><br />【2. 內(nèi)容內(nèi)容內(nèi)容內(nèi)容偏低】<br />內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容內(nèi)容<br /><br /><br />- 謝謝合作 祝您健康!<br />
</JKJY>
<ZJDcotor>內(nèi)容內(nèi)容內(nèi)容內(nèi)容</ZJDcotor>
<ZJDate>2018-11-05 08:42:06</ZJDate>
</Response>
前臺(tái):
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="test.aspx.cs" Inherits="XiaobinManage.Web.test" %>
<%@ Import Namespace="System.Xml" %><!--引用System.Xml類-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<h2>
<asp:Literal ID="lit_SFZH" runat="server"></asp:Literal></h2><!--通過后臺(tái)顯示文字-->
<asp:Repeater ID="rep1" runat="server" OnItemDataBound="rep1_ItemDataBound"> <!--rep第1次綁定 rep1_ItemDataBound -->
<ItemTemplate>
<h3><%#((XmlNode)Container.DataItem).SelectSingleNode("KSMC").InnerText%></h3> <!--前臺(tái)顯示文本-->
<table border="1">
<asp:Repeater ID="rep2" runat="server" OnItemDataBound="rep2_ItemDataBound"> <!--rep第2次綁定 rep2_ItemDataBound -->
<ItemTemplate>
<tr>
<td><%#XPath("XXDM")%></td> <!-- XPath類似于Eval() 前臺(tái)綁定顯示該節(jié)點(diǎn)-->
<td><%#XPath("ItemResult")%></td> <!--前臺(tái)綁定顯示該節(jié)點(diǎn)-->
<td>
<table border="1">
<asp:Repeater ID="rep3" runat="server"> <!--rep第3次綁定 -->
<ItemTemplate>
<tr>
<td><%#XPath("AA")%></td> <!--前臺(tái)綁定顯示該節(jié)點(diǎn)-->
<td><%#XPath("BB")%></td> <!--前臺(tái)綁定顯示該節(jié)點(diǎn)-->
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
</ItemTemplate>
</asp:Repeater>
</form>
</body>
</html>
后臺(tái)CS:
public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
System.Xml.XmlDocument xml = new System.Xml.XmlDocument(); //引用XmlDocument類
xml.Load(Server.MapPath("test.xml")); //打開文件
lit_SFZH.Text = xml.DocumentElement.SelectSingleNode("SFZH").InnerText; //顯示前臺(tái)標(biāo)簽文本 InnerText為文本,InnerXml為html格式
rep1.DataSource = xml.DocumentElement.SelectSingleNode("ExamItemList").ChildNodes; //獲取SelectSingleNode指定節(jié)點(diǎn)的第一個(gè)下的所有節(jié)點(diǎn)
rep1.DataBind();
}
}
protected void rep1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
Repeater rep2 = e.Item.FindControl("rep2") as Repeater;
System.Xml.XPath.XPathNavigator nav = ((System.Xml.XPath.IXPathNavigable)e.Item.DataItem).CreateNavigator(); //綁定e.Item的XPath對(duì)象
System.Xml.XPath.XPathNodeIterator it = nav.Select("MX"); //選擇Select指定節(jié)點(diǎn)的第一個(gè)下的所有節(jié)點(diǎn)
rep2.DataSource = it;
rep2.DataBind();
}
}
protected void rep2_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
Repeater rep3 = e.Item.FindControl("rep3") as Repeater;
IEnumerable em = XPathBinder.Select(e.Item.DataItem, "Flag") as IEnumerable; //獲取Select指定節(jié)點(diǎn)的第一個(gè)下的所有節(jié)點(diǎn)
em.GetEnumerator();
rep3.DataSource = em;
rep3.DataBind();
}
}
}