如何将下面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还有别的方式么
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值