DataTable.WriteXmlSchema Metoda

Definicja

Zapisuje bieżącą strukturę DataTable danych jako schemat XML.

Przeciążenia

WriteXmlSchema(Stream)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego strumienia.

WriteXmlSchema(TextWriter)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego TextWriterelementu .

WriteXmlSchema(String)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego pliku.

WriteXmlSchema(XmlWriter)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego XmlWriterelementu .

WriteXmlSchema(Stream, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego strumienia. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na true.

WriteXmlSchema(TextWriter, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego TextWriterelementu . Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na true.

WriteXmlSchema(XmlWriter, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego XmlWriterelementu . Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na true.

WriteXmlSchema(String, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego pliku. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na true.

Przykłady

Następująca aplikacja konsolowa tworzy dwa DataTable wystąpienia, dodaje każdy do DataSetelementu , tworzy DataRelation powiązanie dwóch tabel, a następnie używa WriteXmlSchema metody do zapisu danych zawartych w tabeli nadrzędnej do obiektu TextWriter. W przykładzie pokazano zachowanie podczas ustawiania parametru writeHierarchy na każdą z jego wartości.

Uwaga

W tym przykładzie pokazano, jak używać jednej z przeciążonych wersji programu WriteXmlSchema W przypadku innych przykładów, które mogą być dostępne, zobacz poszczególne tematy przeciążenia.

static void Main()
{
    DataSet ds = new DataSet();
    DataTable customerTable = GetCustomers();
    DataTable orderTable = GetOrders();

    ds.Tables.Add(customerTable);
    ds.Tables.Add(orderTable);
    ds.Relations.Add("CustomerOrder",
        new DataColumn[] { customerTable.Columns[0] },
        new DataColumn[] { orderTable.Columns[1] }, true);

    System.IO.StringWriter writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(writer, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(writer, true);
    PrintOutput(writer, "Customer table, with hierarchy");

    Console.WriteLine("Press any key to continue.");
    Console.ReadKey();
}

private static DataTable GetCustomers()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(System.Int32));
    table.Columns.Add("Name", typeof(System.String));

    // Set the ID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { idColumn };

    table.Rows.Add(new object[] { 1, "Mary" });
    table.Rows.Add(new object[] { 2, "Andy" });
    table.Rows.Add(new object[] { 3, "Peter" });
    table.Rows.Add(new object[] { 4, "Russ" });
    table.AcceptChanges();
    return table;
}

private static DataTable GetOrders()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create three columns; OrderID, CustomerID, and OrderDate.
    table.Columns.Add(new DataColumn("OrderID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("CustomerID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("OrderDate", typeof(System.DateTime)));

    // Set the OrderID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { table.Columns[0] };

    table.Rows.Add(new object[] { 1, 1, "12/2/2003" });
    table.Rows.Add(new object[] { 2, 1, "1/3/2004" });
    table.Rows.Add(new object[] { 3, 2, "11/13/2004" });
    table.Rows.Add(new object[] { 4, 3, "5/16/2004" });
    table.Rows.Add(new object[] { 5, 3, "5/22/2004" });
    table.Rows.Add(new object[] { 6, 4, "6/15/2004" });
    table.AcceptChanges();
    return table;
}

private static void PrintOutput(System.IO.TextWriter writer,
    string caption)
{
    Console.WriteLine("==============================");
    Console.WriteLine(caption);
    Console.WriteLine("==============================");
    Console.WriteLine(writer.ToString());
}
Sub Main()
  Dim ds As New DataSet
  Dim customerTable As DataTable = GetCustomers()
  Dim orderTable As DataTable = GetOrders()

  ds.Tables.Add(customerTable)
  ds.Tables.Add(orderTable)
  ds.Relations.Add("CustomerOrder", _
   New DataColumn() {customerTable.Columns(0)}, _
   New DataColumn() {orderTable.Columns(1)}, True)

  Dim writer As New System.IO.StringWriter
  customerTable.WriteXmlSchema(writer, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXmlSchema(writer, True)
  PrintOutput(writer, "Customer table, with hierarchy")

  Console.WriteLine("Press any key to continue.")
  Console.ReadKey()
End Sub

Private Function GetOrders() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create three columns, OrderID, CustomerID, and OrderDate.
  table.Columns.Add(New DataColumn("OrderID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("CustomerID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("OrderDate", GetType(System.DateTime)))

  ' Set the OrderID column as the primary key column.
  table.PrimaryKey = New DataColumn() {table.Columns(0)}

  table.Rows.Add(New Object() {1, 1, #12/2/2003#})
  table.Rows.Add(New Object() {2, 1, #1/3/2004#})
  table.Rows.Add(New Object() {3, 2, #11/13/2004#})
  table.Rows.Add(New Object() {4, 3, #5/16/2004#})
  table.Rows.Add(New Object() {5, 3, #5/22/2004#})
  table.Rows.Add(New Object() {6, 4, #6/15/2004#})
  table.AcceptChanges()
  Return table
End Function

Private Function GetCustomers() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create two columns, ID and Name.
  Dim idColumn As DataColumn = table.Columns.Add("ID", GetType(System.Int32))
  table.Columns.Add("Name", GetType(System.String))

  ' Set the ID column as the primary key column.
  table.PrimaryKey = New DataColumn() {idColumn}

  table.Rows.Add(New Object() {1, "Mary"})
  table.Rows.Add(New Object() {2, "Andy"})
  table.Rows.Add(New Object() {3, "Peter"})
  table.Rows.Add(New Object() {4, "Russ"})
  table.AcceptChanges()
  Return table
End Function

Private Sub PrintOutput( _
   ByVal writer As System.IO.TextWriter, ByVal caption As String)

  Console.WriteLine("==============================")
  Console.WriteLine(caption)
  Console.WriteLine("==============================")
  Console.WriteLine(writer.ToString())
End Sub

W przykładzie zostaną wyświetlone następujące dane wyjściowe w oknie konsoli:

==============================  
Customer table, without hierarchy  
==============================  
<?xml version="1.0" encoding="utf-16"?>  
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"  
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
  <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Ta  
ble1">  
    <xs:complexType>  
      <xs:choice minOccurs="0" maxOccurs="unbounded">  
        <xs:element name="Table1">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="ID" type="xs:int" />  
              <xs:element name="Name" type="xs:string" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
      </xs:choice>  
    </xs:complexType>  
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table1" />  
      <xs:field xpath="ID" />  
    </xs:unique>  
  </xs:element>  
</xs:schema>  
==============================  
Customer table, with hierarchy  
==============================  
<?xml version="1.0" encoding="utf-16"?>  
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"  
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
  <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Table1">  
    <xs:complexType>  
      <xs:choice minOccurs="0" maxOccurs="unbounded">  
        <xs:element name="Table1">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="ID" type="xs:int" />  
              <xs:element name="Name" type="xs:string" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
        <xs:element name="Table2">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="OrderID" type="xs:int" />  
              <xs:element name="CustomerID" type="xs:int" minOccurs="0" />  
              <xs:element name="OrderDate" type="xs:dateTime" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
      </xs:choice>  
    </xs:complexType>  
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table1" />  
      <xs:field xpath="ID" />  
    </xs:unique>  
    <xs:unique name="Table2_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table2" />  
      <xs:field xpath="OrderID" />  
    </xs:unique>  
    <xs:keyref name="CustomerOrder" refer="Constraint1">  
      <xs:selector xpath=".//Table2" />  
      <xs:field xpath="CustomerID" />  
    </xs:keyref>  
  </xs:element>  
</xs:schema>  

Uwagi

WriteXmlSchema Użyj metody do zapisania schematu dla DataTable dokumentu XML. Schemat zawiera definicje tabel, relacji i ograniczeń.

Schemat XML jest zapisywany przy użyciu standardu XSD.

Aby zapisać dane w dokumencie XML, użyj WriteXml metody .

WriteXmlSchema(Stream)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego strumienia.

public:
 void WriteXmlSchema(System::IO::Stream ^ stream);
public void WriteXmlSchema (System.IO.Stream? stream);
public void WriteXmlSchema (System.IO.Stream stream);
member this.WriteXmlSchema : System.IO.Stream -> unit
Public Sub WriteXmlSchema (stream As Stream)

Parametry

stream
Stream

Strumień, do którego zostanie zapisany schemat XML.

Uwagi

WriteXmlSchema Użyj metody do zapisania schematu dla DataTable dokumentu XML. Schemat zawiera definicje tabel, relacji i ograniczeń.

Schemat XML jest zapisywany przy użyciu standardu XSD.

Aby zapisać dane w dokumencie XML, użyj WriteXml metody .

Zobacz też

Dotyczy

WriteXmlSchema(TextWriter)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego TextWriterelementu .

public:
 void WriteXmlSchema(System::IO::TextWriter ^ writer);
public void WriteXmlSchema (System.IO.TextWriter? writer);
public void WriteXmlSchema (System.IO.TextWriter writer);
member this.WriteXmlSchema : System.IO.TextWriter -> unit
Public Sub WriteXmlSchema (writer As TextWriter)

Parametry

writer
TextWriter

Element TextWriter , z którym ma być zapisywany.

Uwagi

WriteXmlSchema Użyj metody do zapisania schematu dla DataTable dokumentu XML. Schemat zawiera definicje tabel, relacji i ograniczeń.

Schemat XML jest zapisywany przy użyciu standardu XSD.

Aby zapisać dane w dokumencie XML, użyj WriteXml metody .

Zobacz też

Dotyczy

WriteXmlSchema(String)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego pliku.

public:
 void WriteXmlSchema(System::String ^ fileName);
public void WriteXmlSchema (string fileName);
member this.WriteXmlSchema : string -> unit
Public Sub WriteXmlSchema (fileName As String)

Parametry

fileName
String

Nazwa pliku do użycia.

Uwagi

WriteXmlSchema Użyj metody do zapisania schematu dla DataTable dokumentu XML. Schemat zawiera definicje tabel, relacji i ograniczeń.

Schemat XML jest zapisywany przy użyciu standardu XSD.

Aby zapisać dane w dokumencie XML, użyj WriteXml metody .

Zobacz też

Dotyczy

WriteXmlSchema(XmlWriter)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego XmlWriterelementu .

public:
 void WriteXmlSchema(System::Xml::XmlWriter ^ writer);
public void WriteXmlSchema (System.Xml.XmlWriter? writer);
public void WriteXmlSchema (System.Xml.XmlWriter writer);
member this.WriteXmlSchema : System.Xml.XmlWriter -> unit
Public Sub WriteXmlSchema (writer As XmlWriter)

Parametry

writer
XmlWriter

Do XmlWriter użycia.

Uwagi

WriteXmlSchema Użyj metody do zapisania schematu dla DataTable dokumentu XML. Schemat zawiera definicje tabel, relacji i ograniczeń.

Schemat XML jest zapisywany przy użyciu standardu XSD.

Aby zapisać dane w dokumencie XML, użyj WriteXml metody .

Zobacz też

Dotyczy

WriteXmlSchema(Stream, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego strumienia. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na true.

public:
 void WriteXmlSchema(System::IO::Stream ^ stream, bool writeHierarchy);
public void WriteXmlSchema (System.IO.Stream? stream, bool writeHierarchy);
public void WriteXmlSchema (System.IO.Stream stream, bool writeHierarchy);
member this.WriteXmlSchema : System.IO.Stream * bool -> unit
Public Sub WriteXmlSchema (stream As Stream, writeHierarchy As Boolean)

Parametry

stream
Stream

Strumień, do którego zostanie zapisany schemat XML.

writeHierarchy
Boolean

Jeśli true, zapisz schemat bieżącej tabeli i wszystkich jego elementów podrzędnych. Jeśli false (wartość domyślna), zapisz schemat tylko dla bieżącej tabeli.

Uwagi

WriteXmlSchema Użyj metody do zapisania schematu dla DataTable dokumentu XML. Schemat zawiera definicje tabel, relacji i ograniczeń.

Schemat XML jest zapisywany przy użyciu standardu XSD.

Aby zapisać dane w dokumencie XML, użyj WriteXml metody .

WriteXmlSchema Zwykle metoda zapisuje schemat tylko dla bieżącej tabeli. Aby napisać schemat dla bieżącej tabeli i jej całego elementu podrzędnego, powiązane tabele, wywołaj metodę z parametrem ustawionym writeHierarchy na true.

Zobacz też

Dotyczy

WriteXmlSchema(TextWriter, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego TextWriterelementu . Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na true.

public:
 void WriteXmlSchema(System::IO::TextWriter ^ writer, bool writeHierarchy);
public void WriteXmlSchema (System.IO.TextWriter? writer, bool writeHierarchy);
public void WriteXmlSchema (System.IO.TextWriter writer, bool writeHierarchy);
member this.WriteXmlSchema : System.IO.TextWriter * bool -> unit
Public Sub WriteXmlSchema (writer As TextWriter, writeHierarchy As Boolean)

Parametry

writer
TextWriter

Element TextWriter , z którym ma być zapisywany.

writeHierarchy
Boolean

Jeśli true, zapisz schemat bieżącej tabeli i wszystkich jego elementów podrzędnych. Jeśli false (wartość domyślna), zapisz schemat tylko dla bieżącej tabeli.

Przykłady

Następująca aplikacja konsolowa tworzy dwa DataTable wystąpienia, dodaje każdy do DataSetelementu , tworzy DataRelation powiązanie dwóch tabel, a następnie używa WriteXmlSchema metody do zapisu danych zawartych w tabeli nadrzędnej do obiektu TextWriter. W przykładzie pokazano zachowanie podczas ustawiania parametru writeHierarchy na każdą z jego wartości.

static void Main()
{
    DataSet ds = new DataSet();
    DataTable customerTable = GetCustomers();
    DataTable orderTable = GetOrders();

    ds.Tables.Add(customerTable);
    ds.Tables.Add(orderTable);
    ds.Relations.Add("CustomerOrder",
        new DataColumn[] { customerTable.Columns[0] },
        new DataColumn[] { orderTable.Columns[1] }, true);

    System.IO.StringWriter writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(writer, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(writer, true);
    PrintOutput(writer, "Customer table, with hierarchy");

    Console.WriteLine("Press any key to continue.");
    Console.ReadKey();
}

private static DataTable GetCustomers()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(System.Int32));
    table.Columns.Add("Name", typeof(System.String));

    // Set the ID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { idColumn };

    table.Rows.Add(new object[] { 1, "Mary" });
    table.Rows.Add(new object[] { 2, "Andy" });
    table.Rows.Add(new object[] { 3, "Peter" });
    table.Rows.Add(new object[] { 4, "Russ" });
    table.AcceptChanges();
    return table;
}

private static DataTable GetOrders()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create three columns; OrderID, CustomerID, and OrderDate.
    table.Columns.Add(new DataColumn("OrderID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("CustomerID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("OrderDate", typeof(System.DateTime)));

    // Set the OrderID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { table.Columns[0] };

    table.Rows.Add(new object[] { 1, 1, "12/2/2003" });
    table.Rows.Add(new object[] { 2, 1, "1/3/2004" });
    table.Rows.Add(new object[] { 3, 2, "11/13/2004" });
    table.Rows.Add(new object[] { 4, 3, "5/16/2004" });
    table.Rows.Add(new object[] { 5, 3, "5/22/2004" });
    table.Rows.Add(new object[] { 6, 4, "6/15/2004" });
    table.AcceptChanges();
    return table;
}

private static void PrintOutput(System.IO.TextWriter writer, string caption)
{
    Console.WriteLine("==============================");
    Console.WriteLine(caption);
    Console.WriteLine("==============================");
    Console.WriteLine(writer.ToString());
}
Sub Main()
  Dim ds As New DataSet
  Dim customerTable As DataTable = GetCustomers()
  Dim orderTable As DataTable = GetOrders()

  ds.Tables.Add(customerTable)
  ds.Tables.Add(orderTable)
  ds.Relations.Add("CustomerOrder", _
   New DataColumn() {customerTable.Columns(0)}, _
   New DataColumn() {orderTable.Columns(1)}, True)

  Dim writer As New System.IO.StringWriter
  customerTable.WriteXmlSchema(writer, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXmlSchema(writer, True)
  PrintOutput(writer, "Customer table, with hierarchy")

  Console.WriteLine("Press any key to continue.")
  Console.ReadKey()
End Sub

Private Function GetOrders() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create three columns, OrderID, CustomerID, and OrderDate.
  table.Columns.Add(New DataColumn("OrderID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("CustomerID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("OrderDate", GetType(System.DateTime)))

  ' Set the OrderID column as the primary key column.
  table.PrimaryKey = New DataColumn() {table.Columns(0)}

  table.Rows.Add(New Object() {1, 1, #12/2/2003#})
  table.Rows.Add(New Object() {2, 1, #1/3/2004#})
  table.Rows.Add(New Object() {3, 2, #11/13/2004#})
  table.Rows.Add(New Object() {4, 3, #5/16/2004#})
  table.Rows.Add(New Object() {5, 3, #5/22/2004#})
  table.Rows.Add(New Object() {6, 4, #6/15/2004#})
  table.AcceptChanges()
  Return table
End Function

Private Function GetCustomers() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create two columns, ID and Name.
  Dim idColumn As DataColumn = table.Columns.Add("ID", _
      GetType(System.Int32))
  table.Columns.Add("Name", GetType(System.String))

  ' Set the ID column as the primary key column.
  table.PrimaryKey = New DataColumn() {idColumn}

  table.Rows.Add(New Object() {1, "Mary"})
  table.Rows.Add(New Object() {2, "Andy"})
  table.Rows.Add(New Object() {3, "Peter"})
  table.Rows.Add(New Object() {4, "Russ"})
  table.AcceptChanges()
  Return table
End Function

Private Sub PrintOutput( _
   ByVal writer As System.IO.TextWriter, ByVal caption As String)

  Console.WriteLine("==============================")
  Console.WriteLine(caption)
  Console.WriteLine("==============================")
  Console.WriteLine(writer.ToString())
End Sub

W przykładzie zostaną wyświetlone następujące dane wyjściowe w oknie konsoli:

==============================  
Customer table, without hierarchy  
==============================  
<?xml version="1.0" encoding="utf-16"?>  
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"  
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
  <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Ta  
ble1">  
    <xs:complexType>  
      <xs:choice minOccurs="0" maxOccurs="unbounded">  
        <xs:element name="Table1">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="ID" type="xs:int" />  
              <xs:element name="Name" type="xs:string" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
      </xs:choice>  
    </xs:complexType>  
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table1" />  
      <xs:field xpath="ID" />  
    </xs:unique>  
  </xs:element>  
</xs:schema>  
==============================  
Customer table, with hierarchy  
==============================  
<?xml version="1.0" encoding="utf-16"?>  
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"  
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
  <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Table1">  
    <xs:complexType>  
      <xs:choice minOccurs="0" maxOccurs="unbounded">  
        <xs:element name="Table1">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="ID" type="xs:int" />  
              <xs:element name="Name" type="xs:string" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
        <xs:element name="Table2">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="OrderID" type="xs:int" />  
              <xs:element name="CustomerID" type="xs:int" minOccurs="0" />  
              <xs:element name="OrderDate" type="xs:dateTime" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
      </xs:choice>  
    </xs:complexType>  
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table1" />  
      <xs:field xpath="ID" />  
    </xs:unique>  
    <xs:unique name="Table2_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table2" />  
      <xs:field xpath="OrderID" />  
    </xs:unique>  
    <xs:keyref name="CustomerOrder" refer="Constraint1">  
      <xs:selector xpath=".//Table2" />  
      <xs:field xpath="CustomerID" />  
    </xs:keyref>  
  </xs:element>  
</xs:schema>  

Uwagi

WriteXmlSchema Użyj metody do zapisania schematu dla DataTable dokumentu XML. Schemat zawiera definicje tabel, relacji i ograniczeń.

Schemat XML jest zapisywany przy użyciu standardu XSD.

Aby zapisać dane w dokumencie XML, użyj WriteXml metody .

WriteXmlSchema Zwykle metoda zapisuje schemat tylko dla bieżącej tabeli. Aby napisać schemat dla bieżącej tabeli i jej całego elementu podrzędnego, powiązane tabele, wywołaj metodę z parametrem ustawionym writeHierarchy na true.

Zobacz też

Dotyczy

WriteXmlSchema(XmlWriter, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego XmlWriterelementu . Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na true.

public:
 void WriteXmlSchema(System::Xml::XmlWriter ^ writer, bool writeHierarchy);
public void WriteXmlSchema (System.Xml.XmlWriter? writer, bool writeHierarchy);
public void WriteXmlSchema (System.Xml.XmlWriter writer, bool writeHierarchy);
member this.WriteXmlSchema : System.Xml.XmlWriter * bool -> unit
Public Sub WriteXmlSchema (writer As XmlWriter, writeHierarchy As Boolean)

Parametry

writer
XmlWriter

Używany XmlWriter do pisania dokumentu.

writeHierarchy
Boolean

Jeśli true, zapisz schemat bieżącej tabeli i wszystkich jego elementów podrzędnych. Jeśli false (wartość domyślna), zapisz schemat tylko dla bieżącej tabeli.

Uwagi

WriteXmlSchema Użyj metody do zapisania schematu dla DataTable dokumentu XML. Schemat zawiera definicje tabel, relacji i ograniczeń.

Schemat XML jest zapisywany przy użyciu standardu XSD.

Aby zapisać dane w dokumencie XML, użyj WriteXml metody .

WriteXmlSchema Zwykle metoda zapisuje schemat tylko dla bieżącej tabeli. Aby napisać schemat dla bieżącej tabeli i jej całego elementu podrzędnego, powiązane tabele, wywołaj metodę z parametrem ustawionym writeHierarchy na true.

Zobacz też

Dotyczy

WriteXmlSchema(String, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego pliku. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na true.

public:
 void WriteXmlSchema(System::String ^ fileName, bool writeHierarchy);
public void WriteXmlSchema (string fileName, bool writeHierarchy);
member this.WriteXmlSchema : string * bool -> unit
Public Sub WriteXmlSchema (fileName As String, writeHierarchy As Boolean)

Parametry

fileName
String

Nazwa pliku do użycia.

writeHierarchy
Boolean

Jeśli true, zapisz schemat bieżącej tabeli i wszystkich jego elementów podrzędnych. Jeśli false (wartość domyślna), zapisz schemat tylko dla bieżącej tabeli.

Uwagi

WriteXmlSchema Użyj metody do zapisania schematu dla DataTable dokumentu XML. Schemat zawiera definicje tabel, relacji i ograniczeń.

Schemat XML jest zapisywany przy użyciu standardu XSD.

Aby zapisać dane w dokumencie XML, użyj WriteXml metody .

WriteXmlSchema Zwykle metoda zapisuje schemat tylko dla bieżącej tabeli. Aby napisać schemat dla bieżącej tabeli i jej całego elementu podrzędnego, powiązane tabele, wywołaj metodę z parametrem ustawionym writeHierarchy na true.

Zobacz też

Dotyczy