如何:将 XML 数据加载到 XML Web 服务器控件中
更新:2007 年 11 月
有三种方式将 XML 数据加载到 Xml Web 服务器控件中:
使用 DocumentSource 属性,提供外部 XML 文档的路径。
将 XML 文档作为 XmlDocument 对象加载,并将其传递给控件,方法是使用 Load 方法事件,并将文档指定给 Xml 控件的 Document 属性。
以内联方式在控件的开始和结束标记之间包括 XML 内容。
提供外部 XML 文档的路径
向 Web 窗体页添加一个 Xml 控件。
将该控件的 DocumentSource 属性设置为 XML 源文档的路径。
说明: 需要确保应用程序在运行时有足够的权限来读取 XML 文件。
除非还指定了 TransformSource 属性,否则该 XML 文档将直接写入输出流。TransformSource 必须是一个有效的 XSL 变换文档,该文档将用于在将 XML 文档的内容写入输出流之前,对 XML 文档进行变换。下面的代码示例演示如何通过使用相对路径来引用源文档。
<body> <h3>XML Example</h3> <form runat=server> <asp:Xml id="Xml1" DocumentSource="MySource.xml" TransformSource="MyStyle.xsl" runat="server" /> </form> </body>
将 XML 文档作为对象加载并将其传递到控件上
向 Web 窗体页添加一个 Xml 控件。
添加代码以加载 XML 源文档,并且将该源文档分配给控件的 Document 属性。例如:
Private Sub Page_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load Dim doc As System.Xml.XmlDocument = New System.Xml.XmlDocument() doc.Load(Server.MapPath("MySource.xml")) Dim trans As System.Xml.Xsl.XslTransform = _ New System.Xml.Xsl.XslTransform trans.Load(Server.MapPath("MyStyle.xsl")) Xml1.Document = doc Xml1.Transform = trans End Sub
private void Page_Load(object sender, System.EventArgs e) { System.Xml.XmlDocument doc = new System.Xml.XmlDocument(); doc.Load(Server.MapPath("MySource.xml")); System.Xml.Xsl.XslTransform trans = new System.Xml.Xsl.XslTransform(); trans.Load(Server.MapPath("MyStyle.xsl")); Xml1.Document = doc; Xml1.Transform = trans; }
以内联方式包括 XML 内容
向 Web 窗体页添加一个 Xml 控件。
查找 <asp:Xml> 和 </asp:Xml> 标记。
将 XML 代码添加到这两个标记之间。例如:
<asp:xml TransformSource="MyStyle.xsl" runat=server> <clients> <name>Frank Miller</name> <name>Judy Lew</name> </clients> </asp:xml>