将关系数据存储在单个专有文件中

时间:2012-04-24 19:40:34

标签: c# .net file-io

在我的应用程序编程经验中,我一直使用存储应用程序数据的后端的SQL Server(或Access)数据库。我现在正在研究一些适用于关系数据库的数据的业务需求,但是它们要求将它存储在应用程序将创建并加载的单个可移植自定义文件中。我知道这是一个非常常见的概念,应用程序可以保存单个文件或文档以后可以加载并继续工作,但我不知道如何使用复杂数据实现这一点。我想到加密xml,但如果我不得不首先将它们全部加载到对象中,那么使用它会非常慢或者可能会占用大量内存。有哪些选择?

3 个答案:

答案 0 :(得分:4)

我建议您使用SQLLite或Firebird嵌入式数据库。还有其他选择。它们支持单文件使用,并为您的架构的未来版本(升级SQL脚本)提供明确的升级路径。

我不明白加密是如何发挥作用的。

答案 1 :(得分:2)

在.NET环境中运行时,我认为SQL Server Compact值得研究。它基本上是一个迷你SQL Server,不必安装和配置为服务,而是您引用的DLL。您可以使用普通的数据访问工具,如linq-to-sql和实体框架。

答案 2 :(得分:0)

我想起了{p> SQLite。它是一个基于单个文件的DB。这是convert SQL server databases to SQLite的链接。另请查看Using SQLite in your C# Application