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 进行数据查询。
- 贪婪加载 :通过后台进程在启动的时候把所有的数据都加载到缓存,所有的查询都是在缓存中进行,速度非常快,如果缓存中的数据还没有加载完成,查询的数据直接从独立存储中反序列化。也可以设置实体不使用缓存,这样每次查询的数据都是从独立存储中反序列化。
评论