我正在编写一个软件,它将用户交互的所有信息存储在全局会话对象/类中。我想将这些值存储在持久存储中。但是我不能在目标PC中使用诸如sql server或mysql之类的大型数据库,因为我需要将安装程序的大小保持在最小。创建后端数据存储以便快速检索
我还需要通过传递简单的Linq查询等来从存储中检索值。
我的问题是什么是可以被C#代码操作的数据库的下一个最好的东西?
我正在编写一个软件,它将用户交互的所有信息存储在全局会话对象/类中。我想将这些值存储在持久存储中。但是我不能在目标PC中使用诸如sql server或mysql之类的大型数据库,因为我需要将安装程序的大小保持在最小。创建后端数据存储以便快速检索
我还需要通过传递简单的Linq查询等来从存储中检索值。
我的问题是什么是可以被C#代码操作的数据库的下一个最好的东西?
可能要么SQLite或SQL Server Compact Edition - 这是比进程完全运行并经常使用的这些各种各样的事情都比较全功能的数据库系统(例如Firefox使用的SQLite保存书签) 。
下一个复杂的梯级可能是XML(使用LINQ to XML),或者只是可串行化的对象(使用LINQ to objects) - 当然,你会对性能损失“合适的”紧凑型数据库SQLite如果你开始存储大量的数据,但是你可能需要的存储量比你想象的要多得多,对于小数据集来说,简单性甚至比SQLite更快(例如,你可以限制你的应用程序存储最后100次左右的动作)。
SQL Server CE和SQLite在您描述的场景中很受欢迎。 XML也是如此
您可以连接到Access MDB文件。你不需要SQL服务器,它使用相同的语法。 只需要使用OleDb。
例子:DataEasy: Connect to MS Access (.mdb) Files Easily using C#
XML听起来很有希望。 – logeeks