这是“windows phone mango本地数据库(sqlce)”系列短片文章的第七篇。 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知识点。 我将谈谈在数据库中映射类到表中,也就是说,在你的对象模型和数据库模式之间映射。
1、Database mapping是什么
为了创建一个本地数据库,第一,你必须定义实体类。这些类定义了你的对象模型和它到数据库模式上的映射。LINQ to SQL的对象关系能力取决于映射的详细信息,以此来创建一个关系数据库来映射到相应的DataContext。
2、理解数据库映射
使用属性映射类型到表、属性到列:
(1)在数据库中为了映射实体类到表上,可认为实体类是[Table] attribute
(2)[index]attribute可以用于(在类上)定义索引
(3)在数据库中为了映射实体属性到列上,可以认为实体属性是 [Column] attribute。
[Column( IsPrimaryKey = true )]用于指定主键属性。
使用[Association] attribute指定关联,这允许你在数据库映射中配置两个表/实体之间的关系。
Association attribute有下面的重要属性:
- OtherKey-属性的名字对应关联的另一端的对象的id
- ThisKey-属性的名字对应类型上的主键
- Storage-属性的支持变量
windows phone mango这个版本使用代码优先方法来定义数据库模式是首选的,即目前没有视觉设计器可以帮助开发人员在映射和配置他们的类来处理数据库。或者至少它不是正式地支持。
这意味着你必须:
1、配置映射的属性
2、自己写下所有的类
3、如果数据库不存在的话,要写代码创建它
4、如果你想有升级旧数据库版本到一个新的功能,你必须再一次编写那些代码
这篇文章我讨论了在windows phone mango本地数据库上映射类到数据库的表。请继续关注其余的文章。
Windows Phone本地数据库(SQLCE):7、Database mapping(翻译),,5-wow.com