当前位置:编程学习 > C#/ASP.NET >>

GridView绑定XML数据源的问题

太奇怪了,我用XML数据绑定GRIDVIEW的时候报错,代码如下:

XmlDocument docData = new XmlDocument();
docData.Load("c:\\file.xml");

XmlDataSource xmlSource = new XmlDataSource();
xmlSource.Data = docData.OuterXml;
GridView1.DataSource = xmlSource;
GridView1.DataBind();

运行时错误:为不在页面控件树中的 XmlDataSource 启用缓存时,它需要一个在整个应用程序中唯一的 UniqueID。

如果我不用xmlSource.Data = docData.OuterXml;
改用xmlSource.DataFile="c:\\file.xml";也不用报错;
或者我在界面上先托一个XmlDataSource1,然后:
XmlDataSource1.Data = docData.OuterXml;
GridView1.DataSource = XmlDataSource1;
GridView1.DataBind();
这样也不会报错,奇怪了,请高手指教…… --------------------编程问答-------------------- GridView操作Xml数据源(添加、删除、修改)  --------------------编程问答-------------------- 根本就不是你这么绑的 --------------------编程问答--------------------

DataSet dsRule = new DataSet();             
dsRule.ReadXml(xmlPath);             
DataTable dtRule = dsRule.Tables[shapeType];                         gvParameter.DataSource = dtRule;             
gvParameter.DataBind(); 


参考 --------------------编程问答--------------------
引用 1 楼 fengyarongaa 的回复:
GridView操作Xml数据源(添加、删除、修改)


按我的写法,为什么我动态创建的xmlDataSource不可以,而设计期托上去的xmlDataSource就可以呢? --------------------编程问答-------------------- PS:我的XML数据不是从文件里加载的,是在内存里生成的,所以不能从文件加载…… --------------------编程问答--------------------
引用 5 楼 xiao_yu 的回复:
PS:我的XML数据不是从文件里加载的,是在内存里生成的,所以不能从文件加载……

那就把你的XML数据转换为list 然后绑定。 --------------------编程问答--------------------
引用 6 楼 wxr0323 的回复:
引用 5 楼 xiao_yu 的回复:PS:我的XML数据不是从文件里加载的,是在内存里生成的,所以不能从文件加载……
那就把你的XML数据转换为list 然后绑定。

我的xml数据如果要绑定到XmlDataSource中,怎么做? --------------------编程问答--------------------
引用 6 楼 wxr0323 的回复:
[Quote=引用 5 楼 xiao_yu 的回复:]

PS:我的XML数据不是从文件里加载的,是在内存里生成的,所以不能从文件加载……

那就把你的XML数据转换为list 然后绑定。
请问你引用的那段代码里面的shapeType是什么东西了? --------------------编程问答--------------------
引用 1 楼 fengyarongaa 的回复:
GridView操作Xml数据源(添加、删除、修改) 


太牛逼了!+1 --------------------编程问答--------------------
引用 2 楼 fengyarongaa 的回复:
根本就不是你这么绑的
  +1
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,