有什么比序列化的XML更好的东西来存储c#中的简单数据库,可以在我自己的程序集中编译
本文关键字:数据库 我自己 自己的 编译 集中 程序集 程序 简单 XML 序列化 什么 | 更新日期: 2023-09-27 18:18:49
我正在制作一个简单的应用程序,需要存储一个简单的数据结构。这看起来像是序列化XML的作业,但是……我记得在某个地方读到过一些更适合这项工作的东西,但足够简单,可以在我自己的应用程序中编译。
我已经看过了SterlingDB,但看起来像是一个多余的,我将是一个痛苦的使它在我自己的程序集编译
你知道比序列化XML存储更好的东西吗?
edit:我知道SQLite, Compact SQL, db40,但我正在寻找一些微小的
您可以使用Google的" protocol buffers"二进制格式。Marc Gravell构建了一个。net实现。(注意,我自己从来没用过):
http://code.google.com/p/protobuf-net/(来自Protobug网页):
它被设计为:
- 小尺寸-高效的数据存储(远小于xml)
- 处理成本低-在客户端和服务器端
- 平台无关-在不同的编程体系结构之间可移植
- 可扩展-向旧消息添加新数据
protobuf-net是这个特性的。net实现,它允许你高效、轻松地序列化。net对象。它兼容大部分。net系列,包括。net 2.0/3.0/3.5,。net CF 2.0/3.5, Mono 2。x、Silverlight 2等
(引号结束)
iBoxDB嵌入式nosql对象数据库,小于200K,包含许多功能,充满托管代码,没有任何'DllImport',将DLL嵌入到编译好的c#可执行文件中
在编译的可执行文件中嵌入dll,http://iboxdb.codeplex.com/
SQLite
http://system.data.sqlite.org只要数据量不是太大,您就可以将数据集项添加到项目中并在数据集设计器中编辑它。它是强类型的,您可以使用LINQ查询它,并且它具有内置的保存XML和从XML加载的方法。