2

我只有几周的时间使用 vc# (2008) 进行编程,我正在尝试构建一个应用程序 (winforms),但我遇到了以下问题......我需要我的应用程序可以在有和没有连接到 mssql 数据库的情况下工作,这个听起来对我们的朋友 DataSet 来说是小菜一碟吧?我可以将数据保存为 XML 或二进制文件,直到我可以访问数据库并且 DataSet 将神奇地同步;所有这些都不会打扰用户。问题是......我读过的几本书只是提到了童话般的逻辑,但没有给出任何实际的例子来说明如何做到这一点,你能指出一个例子/演示/我可以阅读或下载的任何内容具有(等于或)类似逻辑的应用程序?

4

2 回答 2

1

序列化应该就是这么简单:

Binary.BinaryFormatter formatter = new Binary.BinaryFormatter();
DataSet ds = new DataSet();
    // populate data set
    using (FileStream fs = new FileStream("c:\\dataset.bin", FileMode.CreateNew)) 
    {
        ds.RemotingFormat = SerializationFormat.Binary;
        formatter.Serialize(fs, ds);
    }

反序列化:

    using (FileStream fs = new FileStream("c:\\dataset.bin", FileMode.Open)) 
    {
        formatter = new BinaryFormatter();
        DataSet ds = (DataSet)formatter.Deserialize(stream);

    }

(大致......不在编译器附近进行适当的测试)

于 2010-05-04T02:55:39.997 回答
0

如果您使用的是 DataSet,则可以只使用DataSet.WriteXmlDataSet.ReadXml。还是我错过了什么?

于 2010-05-04T03:24:07.910 回答