如何在xsd文件中查找元素及其属性

时间:2015-06-16 13:21:52

标签: c# sql-server xml linq xsd

我需要在ms sql server中从xsd文件创建db tabel。首先我将xsd和xml加载到DataSet,然后对DataColumn中的每个DataTable我创建SqlCommand,如下所示:

SqlCommand createtable = new SqlCommand("create table " + dt.TableName + " (" + 
dc.ColumnName + "  varchar(max))", conn);
createtable.ExecuteNonQuery();

或者像这样:

SqlCommand addcol = new SqlCommand("alter table "+ dt.TableName+" 
add "+dc.ColumnName+" varchar(max)", conn);
addcol.ExecuteNonQuery();

但我需要xsd文件中的element / ColumnName属性。对于这样的考试。

<xs:simpleType>
<xs:restriction base="xs:string">
<xs:Length value="20"/>
</xs:restriction>
</xs:simpleType>

所以我需要找到xsd元素的restriction,并且不要忘记&#34; parent&#34;元素,因为某些元素是xsd方案具有相同的名称(&#34;父&#34;元素 - DataTable的名称)。

P.S。我知道DataColumn有属性,但只有MaxLenght。我知道Altova,但我需要&#34;代码&#34;实现

更新:我像这样创建DataSet:

DataSet temp = new DataSet();
temp.ReadXmlSchema("schema.xsd");            
temp.ReadXml("xml_file.xml"); 

0 个答案:

没有答案
相关问题