2009-08-19 54 views

回答

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); 

UPDATE:
如果您想將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

+0

但是我不想訪問硬盤的人。我只想將整個表格保存在數據庫中的一個字段中。 – 2009-08-19 11:40:36

0

爲什麼要將歷史數據存儲在數據庫中?爲什麼不保存QueryString或用於填充GridView並重新綁定數據的任何數據? ?

舉例來說,如果您的用戶導航到mypage.aspx ID = 56 &大小=大&日期=昨天

你可以加載一個JSON對象{ 「ID」 這些選項: 「56」,「大小「:」large「,」date「:」yesterday「}並將其存儲在數據庫中。然後,您的數據是最新的,大型數據集不會用冗餘/過時的數據填滿數據庫表。

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

編輯:如果你不想惹加json的周圍,你可以用任何東西作爲分隔符,例如,對不同的行和獨立的鍵/值對他們用管道('|')

相關問題