如何从GridView加载,保存和显示数据到XML?

时间:2009-08-19 09:45:46

标签: asp.net xml

如何从GridView加载,保存和显示数据到XML?不是硬盘上的XML文件,而是一个临时XML变量,可以将它全部保存在数据库中的XML类型的单个字段中。

2 个答案:

答案 0 :(得分:1)

gridview本身没有任何数据 - 因此您无法将任何数据保存到磁盘。

您的gridview将绑定到一个数据源 - 一个对象列表,一个DataTable,任何 - 数据,并且可以保存到磁盘(并从磁盘加载)。

您最简单的选择是将XML序列化到磁盘 - 或从那里加载它。您需要查看XML serialization

或者查看DataTable的ReadXmlWriteXml方法 - 它们允许您以XML格式将DataTable保存到磁盘上 - 或者从磁盘上的XML文件加载它。

可以这么简单:

DataTable myData = new DataTable();
myData.ReadXml(@"C:\temp\mydatafile.xml");

// do some processing

myData.WriteXml(@"C:\temp\mydatafile.xml", XmlWriteMode.WriteSchema);

更新:
如果要将XML存储到字符串中以便将其转储到数据库中,请使用:

// write DataTable to memory stream as XML
MemoryStream memStm = new MemoryStream();
myData.WriteXml(memStm);

// read memory stream into a string variable
memStm.Position = 0;
string xmlContents = new StreamReader(memStm).ReadToEnd();

然后将xmlContents存储到数据库中。

Marc

答案 1 :(得分:0)

为什么要将历史数据存储在数据库中?为什么不保存QueryString或用于填充gridview的相应数据并相应地重新绑定数据?

例如,如果您的用户导航到mypage.aspx?id = 56& size = large& date =昨天

您可以在json对象中加载这些选项{“Id”:“56”,“size”:“large”,“date”:“yesterday”}并将其存储在数据库中。然后,您的数据是最新的,大型数据集不会使用冗余/过期数据填充数据库表。

退房: http://www.codeplex.com/Json

编辑:如果你不想乱搞添加json,你可以使用任何东西作为分隔符,例如,在单独的行上有键/值对并用管道分隔它们('|')< / p>