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("Emp");
// 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(int),
null,
MappingType.Attribute));
// Write out the XSD
MyDataSet.WriteXmlSchema(@"C:\Employee.xsd");
I am getting below xsd file
<?xml version="1.0" standalone="yes"?>
<xs:schema id="Golfers" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="Emp" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Employee_1">
<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-->
i wanted to change the minOccurs and maxOccurs value