0

XML を DataGridView に読み込み、変更を datagridview から XML ファイル (CRUD) に関連付けたいと考えています。さまざまな方法を試しましたが、最善の方法を見つけようとしています。XML を正しく読み込んで表示し、DataGridView 全体を反復処理して新しい XML ドキュメントを作成することで変更を保存することができましたが、それには多くの作業が必要です。処理。これをより簡単な方法で行うにはどうすればよいですか?XML ファイルを XDocument 内のメモリにロードし、DataGridView からの変更を Edit_EventHandler で操作することを考えていたので、変更を保存するときに GridView 全体を再度解析する必要はありません。LINQ を使用してみましたが、クエリが DataGridView に読み込まれません。

string path = @"D:\WorkData\users.xml";

xmlDoc = XDocument.Load(path);
var q = from item in xmlDoc.Descendants("client")
        select new
        {
            Name = item.Element("ID").Value,
            Mail = item.Element("email").Value
        };

dataGridView1.DataSource = q.ToList();

および XML:

<?xml version='1.0'?>
<clients>
  <client ID='0000100000' email='email0@mail.com'/>
  <client ID='0000100001' email='email1@mail.com'/> 
</clients>
4

2 に答える 2

1

Id と email は要素ではなく属性です!

var q = from item in xmlDoc.Descendants("client")
        select new
        {
            Name = item.Attribute("ID").Value,
            Mail = item.Attribute("email").Value
        };
于 2013-10-21T14:15:17.740 に答える