Controller中记载Xml信息
public ActionResult Index(string name)
{
if (name.Contains("Xml"))
{
ViewBag.Xml = ShowChange();
}
return View();
}
//改变格式内容赋值
public string ShowChange()
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(AddNode());
XmlDocument xmlResult = new XmlDocument();
xmlResult.LoadXml(
@"<?xml version=""1.0"" encoding=""utf-8""?>
<xsl:stylesheet version =""1.0"" xmlns:xsl=""http://www.w3.org/1999/XSL/Transform"">
<xsl:template match=""/"">
<div style=""padding-right: 0px; padding-left: 0px;
padding-bottom: 6px; padding-top: 6px; text-align: center;"" >
<table cellspacing=""0"" cellpadding=""0"" rules=""all"" border=""1"" id=""DataGridCoster""
style=""width:90%;border-collapse:collapse;table-layout: fixed;
margin-top: 0px; margin-bottom: 6px; font-size:12px;border: solid 1px #AACCEE;"">
<tr style=""background-color:#AACCEE;height:30px; min-height:30px;"" >
<td align=""center"" style=""width:40px;"">
序号
</td>
<td align=""center"" style=""width:200px;"">变更项名称</td>
<td align=""center"" style=""width:80px;"">变更项类别</td>
<td align=""center"" >当前值</td>
<td align=""center"" >变更为</td>
<td align=""center"" style=""width:80px;"">是否生效</td>
</tr>
<xsl:for-each select=""/ChangeItems/ChangeItem"">
<tr>
<td align=""center"">
<span>
<xsl:value-of select=""position()"" />
</span>
</td>
<td align=""left""><xsl:value-of select=""@Name"" /></td>
<td align=""center"" ><xsl:value-of select=""@ChangeType"" /></td>
<td align=""center"" ><xsl:value-of select=""@OleValue"" disable-output-escaping=""yes"" /></td>
<td align=""center"" ><xsl:value-of select=""@NewValue"" disable-output-escaping=""yes"" /></td>
<td align=""center"" >
<xsl:choose>
<xsl:when test=""@SetFlag ='True'"">
<img src='../images/accept.png' alt='已生效' title='已生效'/>
</xsl:when>
<xsl:otherwise>
<img src='../images/que.gif' alt='未生效' title='未生效'/>
</xsl:otherwise>
</xsl:choose>
</td>
</tr>
</xsl:for-each>
</table>
</div>
</xsl:template>
</xsl:stylesheet>
");
StringBuilder sb = new StringBuilder();
StringWriter writer = new StringWriter(sb);
XslTransform transform = new XslTransform();
transform.Load(xmlResult);
transform.Transform(xmlDoc, null, writer, null);
return sb.ToString();
}
//创建xml节点
public string AddNode()
{
XmlDocument xmlDoc = new XmlDocument();
XmlElement xelement = xmlDoc.CreateElement("ChangeItems");
xmlDoc.AppendChild(xelement);
for (int i = 0; i < 2; i++)
{
XmlNode d = xmlDoc.CreateNode(XmlNodeType.Element, "ChangeItem", "");
XmlNode attr = xmlDoc.CreateNode(XmlNodeType.Attribute, "Name", "");
attr.Value = "凤舞九天";
d.Attributes.SetNamedItem(attr);
attr = xmlDoc.CreateNode(XmlNodeType.Attribute, "Code", "");
attr.Value = "xz10086";
d.Attributes.SetNamedItem(attr);
attr = xmlDoc.CreateNode(XmlNodeType.Attribute, "ChangeType", "");
attr.Value = "中文";
d.Attributes.SetNamedItem(attr);
attr = xmlDoc.CreateNode(XmlNodeType.Attribute, "SetFlag", "");
d.Attributes.SetNamedItem(attr);
attr = xmlDoc.CreateNode(XmlNodeType.Attribute, "OleValue", "");
attr.Value = "老纸";
d.Attributes.SetNamedItem(attr);
attr = xmlDoc.CreateNode(XmlNodeType.Attribute, "NewValue", "");
attr.Value = "新知";
d.Attributes.SetNamedItem(attr);
xelement.AppendChild(d);
}
return xmlDoc.InnerXml;
}
Index.cshtml 页面展示
@Html.Raw(ViewBag.Xml)
显示结果内容: