Click here to Skip to main content
15,886,026 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I am creating a utility to convert the Dataset into xsd file. i am Reading data from database and creating dataset For creation of XSD file i am actually creating a Dataset and Datatable and then i am using Dataset.WriteXMLSchema() to write the xsd file.

After my file generated i am getting attribute minoccur =0 for all the elements in my xsd file

Is there is any way by which i can change the minOccur = 2 or can we add Maxoccur also in the same way.??

Below is my code


DataSet MyDataSet = new DataSet("Employee");

    // This can be confusing, the 'DataTable' will actually
    // become Elements (Rows) in the XML file.
    DataTable MyDataTable = new DataTable("Employee_1");

    MyDataSet.Tables.Add(MyDataTable);

    // Make columns attributes so we can 
    // link directly to a GridView
    MyDataTable.Columns.Add(new DataColumn("ID",
                                 typeof(System.Int32),
                                 null,
                                 MappingType.Attribute));

    MyDataTable.Columns.Add(new DataColumn("Name",
                                 typeof(String),
                                 null,
                                 MappingType.Attribute));

    MyDataTable.Columns.Add(new DataColumn("Salary",
                                 typeof(int32),
                                 null,
                                 MappingType.Attribute));

    // Write out the XSD
    MyDataSet.WriteXmlSchema(@"C:\Employee.xsd");



XSD file is got is below


XML
<?xml version="1.0" standalone="yes"?>
  <xs:schema id="Employee" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xs:element name="Employee_1" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
      <xs:complexType>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element name="Emp">
            <xs:complexType>
              <xs:attribute name="ID" type="xs:int" />
              <xs:attribute name="Name" type="xs:string" />
              <xs:attribute name="Salary" type="xs:int" />
            </xs:complexType>
          </xs:element>
        </xs:choice>
      </xs:complexType>
    </xs:element>
  </xs:schema><!--EndFragment-->
Posted
Updated 22-Jun-13 15:51pm
v5

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900