XmlDataDocument::GetRowFromElement Method (XmlElement^)


Retrieves the DataRow associated with the specified XmlElement.

Namespace:   System.Xml
Assembly:  System.Data (in System.Data.dll)

DataRow^ GetRowFromElement(
	XmlElement^ e


Type: System.Xml::XmlElement^

The XmlElement whose associated DataRow you want to retrieve.

Return Value

Type: System.Data::DataRow^

The DataRow containing a representation of the XmlElement; null if there is no DataRow associated with the XmlElement.

The following example modifies the price of the first book.

#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 = gcnew 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( safe_cast<XmlElement^>(root->FirstChild) );
   row["price"] = "12.95";
   Console::WriteLine( "Display the modified XML data..." );
   Console::WriteLine( doc->DocumentElement->OuterXml );

The example uses the following input files:


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


<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:complexType name="bookType">
   <xsd:element name="title" type="xsd:string"/>
   <xsd:element name="author" type="authorName"/>
   <xsd:element name="price"  type="xsd:decimal"/>
  <xsd:attribute name="genre" type="xsd:string"/>

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


.NET Framework
Available since 1.1
Return to top