方法 : XML Web サーバー コントロール内に XML データを読み込む
更新 : 2007 年 11 月
Xml Web サーバー コントロールに XML データを読み込むには、次の 3 つの方法があります。
DocumentSource プロパティを使用して、外部 XML ドキュメントへのパスを指定する。
XML ドキュメントを XmlDocument オブジェクトとして読み込み、Load メソッド イベントを使用してドキュメントを Xml コントロールの Document プロパティに割り当てることで、コントロールに渡す。
コントロールの開始タグと終了タグの間に、XML の内容をインラインで追加する。
外部 XML ドキュメントへのパスを指定するには
Web フォーム ページに Xml コントロールを追加します。
コントロールの DocumentSource プロパティに、XML ソース ドキュメントへのパスを設定します。
メモ : アプリケーションを実行するときは、XML ファイルの読み取りアクセス許可があることを確認する必要があります。
TransformSource プロパティも指定しない限り、XML ドキュメントは出力ストリームに直接書き込まれます。TransformSource は、有効な XSL Transformations ドキュメントである必要があり、これは 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> タグを見つけます。
この 2 つのタグの間に XML コードを追加します。以下に例を示します。
<asp:xml TransformSource="MyStyle.xsl" runat=server> <clients> <name>Frank Miller</name> <name>Judy Lew</name> </clients> </asp:xml>