如何将下面xml放到datagridview中

前端之家收集整理的这篇文章主要介绍了如何将下面xml放到datagridview中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
XML code
   
   
<? xml version="1.0" encoding="utf-8" ?> < NewDataSet > < Table > < node ID ="1" 书籍名称 ="语文" 书籍类别 ="教育" 进货数量 ="30" 库存数量 ="10" /> < node ID ="2" 书籍名称 ="英语" 书籍类别 ="教育" 进货数量 ="20" 库存数量 ="20" /> < node ID ="3" 书籍名称 ="数学" 书籍类别 ="教育" 进货数量 ="10" 库存数量 ="30" /> </ Table > </ NewDataSet >


求C#代码
C#语言 17 次浏览 2011-03-04 17:12

8 个回答

PS:不知道我写的XML格式是否正确,刚接触XML
2011-03-04 17:15 推荐: 0 次
用dateset读取XML

再把dateset给datagridview不就行了!
2011-03-04 17:24 推荐: 0 次
C# code
      
      
// 创建 DataSet 对象 DataSet myDS = new DataSet(); // 将 XML 文件读入 DataSet myDS.ReadXml(Server.MapPath( " people.xml " )); // 绑定到 DataGrid DataGrid1.DataSource = myDS.Tables[ 0 ]; DataGrid1.DataBind();
2011-03-04 17:26 推荐: 0 次
楼上正解!!
2011-03-04 17:30 推荐: 0 次
建议 数据侧 业务逻辑层 展示层 之间 禁止用DataSet DataTable 传递数据
自己建立对象(DTO)来传递数据
2011-03-04 17:36 推荐: 0 次
mark......
2011-03-04 17:45 推荐: 0 次
现在的XML格式用DataTable.ReadXML是读不出来的。

格式本身没有错,但不是DataTable所支持的那种。

可以考虑用linq:

C# code
      
      
string xmlPath = @" XML路径 " ; XDocument xdoc = XDocument.Load(xmlPath); var query = from n in xdoc.Descendants( " node " ) select new { ID = n.Attribute( " ID " ).Value,书籍名称 = n.Attribute( " 书籍名称 " ).Value,书籍类别 = n.Attribute( " 书籍类别 " ).Value }; // 可以直接绑定 dataGridView1.DataSource = query.ToList();


另外建议在xml节点/属性的命名最好用英文。
如果xml结构是你自己定义的话,你可以修改下,以支持DataTable.ReadXML。

比如:
XML code
      
      
<? xml version="1.0" standalone="yes" ?> < NewDataSet > < TableName > < ID > 1 </ ID > < BookName > a </ BookName > < BookCategory > b </ BookCategory > </ TableName > < TableName > < ID > 1 </ ID > < BookName > a </ BookName > < BookCategory > b </ BookCategory > </ TableName > </ NewDataSet >
2011-03-04 18:05 推荐: 0 次
引用 7 楼 fangxinggood 的回复: 现在的XML格式用DataTable.ReadXML是读不出来的。 格式本身没有错,但不是DataTable所支持的那种。 可以考虑用linq: C# code string xmlPath = @"XML路径"; XDocument xdoc = XDocument.Load(xmlPath); var query = from n in xdoc.Descendan……
格式不能变,出了linq还有别的方式么

猜你在找的XML相关文章