将表类型保存到sql数据库以供以后检索和显示

时间:2014-12-07 10:47:16

标签: asp.net sql-server

我做了一系列复杂的计算,并将结果放在一个表格中。然后,我需要显示存储在表中的结果: a)立即使用“asp:Table”或 b)保存到SQL数据库以重新显示,而无需重新计算。

是否有一种简单的方法可以将表保存到SQL数据库(理想情况下是单个字段),以便将来检索并通过“asp:Table”进行后续显示?

1 个答案:

答案 0 :(得分:1)

如果您需要存储整个对象供以后使用,那就是Serialization

使用Fastest way to serialize and deserialize .NET objects之类的内容创建三个组件:

  1. 将表格转换为字符串(或二进制)的代码
  2. 严格反转步骤1转换的代码,以便您可以重复使用该对象
  3. 存储字符串(或二进制)数据的地方。
  4. 代码只是

    public static string Serialize(Table table)
    {
        var serializer = new XmlSerializer(typeof(Table));
        TextWriter writer = new StringWriter();
        serializer.Serialize(writer, table);
        return writer.ToString();
    }
    
    public static Table Deserialize(string tableData)
    {
        var serializer = new XmlSerializer(typeof(Table));
        TextReader reader = new StringReader(tableData);
        return (Table)serializer.Deserialize(reader);
    } 
    

    您可以将此数据放入SQL Server varchar(max)列,显然可以使用某些主键,以便稍后检索它。