私はいくつかのテーブルを持つDataSetから生成されたXmlSchemaオブジェクトからデータを抽出しようとしています。下の例のXmlSchemaは完全な正しいスキーマとしてエクスポートされますが、どのようにトラバースするのかわかりません。 Itemは1つしかなく、Elementsは常に空です。 XmlSchemaオブジェクトのテーブル要素と列要素を取得するにはどうすればよいですか?XmlSchemaオブジェクトを適切にトラバースする
using System;
using System.IO;
using System.Data;
using System.Collections;
using System.Xml.Schema;
public class Program
{
public static void Main()
{
DataTable table1 = new DataTable("patients");
table1.Columns.Add("name");
table1.Columns.Add("id", typeof(int));
table1.Rows.Add("sam", 1);
table1.Rows.Add("mark", 2);
DataTable table2 = new DataTable("medications");
table2.Columns.Add("id", typeof(int));
table2.Columns.Add("medication");
table2.Rows.Add(1, "atenolol");
table2.Rows.Add(2, "amoxicillin");
DataSet set = new DataSet("office");
set.Tables.Add(table1);
set.Tables.Add(table2);
using (var reader = new StringReader(set.GetXmlSchema()))
using (var writer = new StringWriter())
{
var schema = XmlSchema.Read(reader, (sender, args) => { });
schema.Write(writer);
writer.Flush();
Console.WriteLine(schema.Elements.Values.Count);
Console.WriteLine(writer.ToString());
}
//Console.WriteLine(set.GetXmlSchema());
}
}
私はあなたが読者に何をしようとしてわからないとライター。 GetXmlSchema()はあなたが探しているものを与えるはずであり、残りのコードは必要ありません。 – lancew
申し訳ありません私はそれを言い換えることができます – user433342