Export (0) Print
Expand All

XmlDataDocument.GetRowFromElement Method

Retrieves the DataRow associated with the specified XmlElement.

[Visual Basic]
Public Function GetRowFromElement( _
   ByVal e As XmlElement _
) As DataRow
[C#]
public DataRow GetRowFromElement(
 XmlElement e
);
[C++]
public: DataRow* GetRowFromElement(
 XmlElement* e
);
[JScript]
public function GetRowFromElement(
   e : XmlElement
) : DataRow;

Parameters

e
The XmlElement whose associated DataRow you wish to retrieve.

Return Value

The DataRow containing a representation of the XmlElement; a null reference (Nothing in Visual Basic) if there is no DataRow associated with the XmlElement.

Example

[Visual Basic, C#, C++] The following example modifies the price of the first book.

[Visual Basic] 
Imports System
Imports System.Data
Imports System.Xml

public class Sample

  public shared sub Main()

      'Create an XmlDataDocument.
      Dim doc as XmlDataDocument = new XmlDataDocument()

      'Load the schema.
      doc.DataSet.ReadXmlSchema("store.xsd") 
 
      'Load the XML data.
      doc.Load("2books.xml")
        
      'Change the price on the first book.
      Dim book as XmlElement 
      book = CType(doc.DocumentElement.FirstChild, XmlElement)
      Dim row as DataRow 
      row = doc.GetRowFromElement(book)
      row.Item("price") = "12.95"
        
     Console.WriteLine("Display the modified XML data...")
     Console.WriteLine(doc.DocumentElement.OuterXml)

  end sub
end class

[C#] 
using System;
using System.Data;
using System.Xml;
public class Sample {
    public static void Main() {
        // Create an XmlDataDocument.
        XmlDataDocument doc = new XmlDataDocument();
        
        // Load the schema file.
        doc.DataSet.ReadXmlSchema("store.xsd");
        
        // Load the XML data.
        doc.Load("2books.xml");
        
        //Change the price on the first book.
        XmlElement root = doc.DocumentElement;
        DataRow row = doc.GetRowFromElement((XmlElement)root.FirstChild);
        row["price"] = "12.95";
        
        Console.WriteLine("Display the modified XML data...");
        Console.WriteLine(doc.DocumentElement.OuterXml);
    }
} // End class

[C++] 
#using <mscorlib.dll>
#using <System.dll>
#using <System.Data.dll>
#using <System.Xml.dll>


using namespace System;
using namespace System::Data;
using namespace System::Xml;

int main() 
{
   // Create an XmlDataDocument.
   XmlDataDocument* doc = new XmlDataDocument();

   // Load the schema file.
   doc->DataSet->ReadXmlSchema(S"store.xsd");

   // Load the XML data.
   doc->Load(S"2books.xml");

   //Change the price on the first book.
   XmlElement* root = doc->DocumentElement;
   DataRow* row = doc->GetRowFromElement(__try_cast<XmlElement*>( root->FirstChild ));
   row->set_Item( S"price", S"12.95" );

   Console::WriteLine(S"Display the modified XML data...");
   Console::WriteLine(doc->DocumentElement->OuterXml);
}

[Visual Basic, C#, C++] The example uses the following input files:

[Visual Basic, C#, C++] 2books.xml

<!--sample XML fragment-->
<bookstore>
  <book genre='novel' ISBN='10-861003-324'>
    <title>The Handmaid's Tale</title>
    <price>19.95</price>
  </book>
  <book genre='novel' ISBN='1-861001-57-5'>
    <title>Pride And Prejudice</title>
    <price>24.95</price>
  </book>
</bookstore>

[Visual Basic, C#, C++] store.xsd

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

 <xsd:element name="bookstore" type="bookstoreType"/>

 <xsd:complexType name="bookstoreType">
  <xsd:sequence maxOccurs="unbounded">
   <xsd:element name="book"  type="bookType"/>
  </xsd:sequence>
 </xsd:complexType>

 <xsd:complexType name="bookType">
  <xsd:sequence>
   <xsd:element name="title" type="xsd:string"/>
   <xsd:element name="author" type="authorName"/>
   <xsd:element name="price"  type="xsd:decimal"/>
  </xsd:sequence>
  <xsd:attribute name="genre" type="xsd:string"/>
 </xsd:complexType>

 <xsd:complexType name="authorName">
  <xsd:sequence>
   <xsd:element name="first-name"  type="xsd:string"/>
   <xsd:element name="last-name" type="xsd:string"/>
  </xsd:sequence>
 </xsd:complexType>

</xsd:schema>

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

XmlDataDocument Class | XmlDataDocument Members | System.Xml Namespace

Show:
© 2014 Microsoft