Практическое руководство. Загрузка данных XML в серверном веб-элементе управления XML

Visual Studio 2010

Обновлен: Ноябрь 2007

Существует три способа загрузки данных XML в веб-серверный элемент управления Xml:

  • Предоставление пути к внешнему документу XML с помощью свойства DocumentSource.

  • Загрузить документ XML как объект и передать его элементу управления, используя метод XmlDocument в событии Load и присвоив документ свойству Document элемента управления Xml.

  • Использовать встроенный XML между открывающим и закрывающим тегами элемента управления.

Предоставление пути к внешнему документу XML

  1. Добавьте элемент управления Xml на страницу Web Forms.

  2. Необходимо в свойстве DocumentSource элемента управления задать путь к исходному документу XML.

    1atf1s3b.alert_note(ru-ru,VS.100).gifПримечание.

    Необходимо убедиться, что при выполнении приложение имеет достаточно разрешений для чтения файла XML.

    Запись документа XML будет выполнена непосредственно в выходной поток, если только не задано свойство TransformSource. TransformSource должно являться допустимым документом XSL Transformations, который будет использоваться для преобразования документа XML перед записью его содержимого в выходной поток. В следующем примере кода показан способ ссылки на исходные документы с помощью относительного пути.

    <body>
        <h3>XML Example</h3>
        <form runat=server>
            <asp:Xml id="Xml1" DocumentSource="MySource.xml"
                TransformSource="MyStyle.xsl" runat="server" />
        </form>
    </body>
    

Загрузка документа XML как объекта и передача его элементу управления

  1. Добавьте элемент управления Xml на страницу Web Forms.

  2. Добавьте код для загрузки исходного документа 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

  1. Добавьте элемент управления Xml на страницу Web Forms.

  2. Найдите теги <asp:Xml> и </asp:Xml>.

  3. Необходимо добавить код XML между этими двумя тегами. Например:

    <asp:xml TransformSource="MyStyle.xsl" runat=server>
        <clients>
            <name>Frank Miller</name>
            <name>Judy Lew</name>
        </clients>
    </asp:xml>
    
Показ: