摘要
我陷入困境,我正在寻找一种简单的数据存储解决方案,它满足一些相当严格的要求,主要是因为我没有为引擎使用单独的进程或服务器。我也痛苦地意识到,虽然我是一个足够的开发人员,但我可以滚动我自己的数据库堆栈,这也意味着我已经足够了解它通常是一个坏主意尝试重新解决已解决的问题,所以如果有更好的选择,我不应该尝试这样做。
目标
- 我的目标语言是Windows服务器安装上的C#4 / 4.5;这不是我的选择,而是我可以接受的。我之所以提到这一点,是因为它似乎极大地限制了我的选择。
- 我想存储数据而无需单独的进程/服务器来托管数据。事实上,我是平坦的告诉它不能使用单独的服务器,因此外部甚至本地运行SQL Server / MySQL /等的副本不是一个选项。这有很好的理由。
- 我只想存储几千种不同类型的物体。我确实认为我不会存储超过1000条记录。
- 这个数据集是如此之小,以至于即使我没有我不能做到的限制,实际上使用完整的数据库服务器也会过度杀伤。
- 可能的最小尺寸越好。
- 对我来说最简单的是开发人员,越多越好。
醇>
我调查的选项
- 我之前有过使用SQLite的经验,主要处理Python / SqlALchemy(sqlite用于单元测试,PostGreSQL / MySQL用于服务器)所以我真的很失望地发现Entity / Linq / .Net完全支持Sqlite或者允许您使用类似代码之类的东西生成数据库作为开发流程的一部分。更糟糕的是,谷歌似乎只指出了4年内未得到支持或更新的主要驱动因素。
- 到目前为止,我已经花了我的周末来研究JET(microsoft.isam.esent.interop)认为它可能有用..但我发现API本身并不令人愉快 - 事实上,我发现由于支持它缺乏并且日益恶化,它变得钝而不透明;所以我担心使用它,因为支持似乎已经消失,如果它还没有消失。
醇>
问题
当我只看SQLite和JET(microsoft.isam.esent.interop)时,我错过了哪些选项?