InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

Windows 7 Phone 文档数据库Rapid Repository正式发布

作者 张善友 发布于 2010年11月11日

领域
运维 & 基础架构,
架构 & 设计,
语言 & 开发
主题
.NET ,
持久性 ,
NoSQL ,
开放源代码 ,
数据库 ,
Windows Phone 7 ,
编程 ,
移动

10月份发布的Windows Phone 7 支持访问数据几种方式为: XML、Isolated Storage[独立存储]、Cloud[云存储],Windows Phone 7 上没有本地数据库API可以利用 。Windows 7 Phone 本地数据存储社区已经有好几种方案,Window Phone MVP 林永坚在博客 浅谈Windows Phone 7本地数据库的选择 列出了sqlite,siaqodb 等数据库。这里介绍的Rapid Repository是基于Windows Phone 7 独立存储开发的文档数据库(NoSQL),文档数据库和关系数据库相比的优势是不需要创建Schema,表或者是存储过程等关系数据库的对象。只需要根据你的需要定义你的实体然后把它保存到数据库就可以了,支持LINQ to Object方式查询数据库。

Rapid Repository是一个基于Apache 2.0协议开源的项目,11月7日发布了1.0版本,感兴趣的读者可以到可以从 http://rapidrepository.codeplex.com/ 下载使用。下个版本中将会加入对视图/索引模型的支持,提高查询的性能,以及对事务的支持。作者的博客上有一系列的使用教程:

  • 介绍 :介绍数据库的原理和特性
  • 安装Rapid Repository :需要首先安装Windows Phone 7 Sdk,然后在你的项目中引用RapidRepository.dll ,你的根实体对象实现IRapidEntity接口,你的Repository继承泛型类RapidRepository<> 就可以了。
  • 创建,读取,更新和删除操作 :RapidRepository已经包含了一系列的方法帮助你完成数据库的操作,完全支持使用LINQ进行数据查询。
  • 贪婪加载 :通过后台进程在启动的时候把所有的数据都加载到缓存,所有的查询都是在缓存中进行,速度非常快,如果缓存中的数据还没有加载完成,查询的数据直接从独立存储中反序列化。也可以设置实体不使用缓存,这样每次查询的数据都是从独立存储中反序列化。

 

张善友 毕业于兰州大学数学系,现任职于腾讯公司企业IT部,微软多届ASP.NET MVP。