2

XSDファイルがあり、その中のすべての要素の名前のリストを取得する必要があります。

私は次のことを試しました:

openFileDialog1.ShowDialog();
tbSchema.Text = openFileDialog1.FileName;

cbElement.Items.Clear();

XmlSchemaSet schemaSet = new XmlSchemaSet();
schemaSet.Add("", tbSchema.Text);
schemaSet.Compile();
XmlSchema customerSchema = null;
foreach (XmlSchema schema in schemaSet.Schemas())
{
    customerSchema = schema;
}
foreach (XmlSchemaElement element in customerSchema.Elements.Values)
{
    cbElement.Items.Add(element.Name);
}

しかし、それでも機能しません。

4

1 に答える 1

1

次のようなことを試すことができます:-

 XmlDocument doc = new XmlDocument();
 doc.Load("D:\\schema.xsd");                      // Load the document from the root of an ASP.Net website

 XmlElement schemaElement = doc.DocumentElement;  // The root element of the schema document is the <schema> element
 string elementName = schemaElement.LocalName;    // This will print "schema"
 foreach (XmlNode ele in schemaElement.ChildNodes)
 {
  if (ele.LocalName == "element")
  {
     .....
  }
 }
于 2012-11-25T11:52:10.257 に答える