背景:VS2013默认删除了ADO.NET实体数据模型的支持(个人猜测为了把实体模型独立出去形成插件功能供用户自由选择),因此在VS2013环境下使用实体数据模型需要额外进行配置。本文以VS2013环境,SQLCe数据源实体模型配置为例,将自身工作经历中涉及到的相关知识点进行总结、积累记录和分享,希望能对大家有所帮助。
首先,介绍下实体数据模型:实体数据模型 (EDM) 是一个规范,用于定义由在 实体框架 基础上生成的应用程序使用的数据、实体和关系。简单来说就是允许我们在开发中以创建模型为出发点,然后从模型自动更新到代码类或数据库结构的一种方法规范,可以极大的节省我们维护代码到实体、实体到数据库结构的工作量,减少出错率。
下面开始介绍如何配置VS2013下的EF。从流程上讲:
下面就安装步骤进行详细说明:
1.打开VS2013,在菜单栏依次工具》扩展和更新(如已安装SQLCeToolBox插件可跳过此步骤)
2.进入扩展安装界面,左侧选择“联机”,右侧搜索框输入“sqlce”关键词,选择如图所示的搜索结果点击安装
3.安装完毕后新建项目(这里新建的类库项目)
4.右击项目选择添加》新建项
5.选择ADO.NET实体数据模型,点击添加
6.选择第一项,点击下一步。(EF设计器提供了完善的实体框架功能会比较方便,实体数据模型通常分为Model First、Database First、Code First三种类型,区别为主导先行的方式,在此不过多阐述)
7.1选择目标数据库(这里提前创建了一个简单的包含主键字段表的SQLCe数据库),下一步。若想要连接的数据库不在列表中,点击新建连接创建已有的数据库的连接
7.2新建连接,选择数据源类型
7.3补充数据源路径,测试连接成功后,点击确定。
8.选择EF(实体框架entity framework)版本
9.选择实体模型中需要包括的数据表、视图等,修改模型命名空间后点击完成
10.此时EF设计器自动添加项目引用和相应edmx文件,打开edmx实体模型文件,在实体视图区域右击可进行实体更改后的模型和数据库的双向更新。
11.实体视图区域的属性中包含了对实体模型生成的类代码的一些配置,例如是否包含通知接口,是否延迟更新、校验等配置,为了使生成的类代码更简洁和兼容老版本,通常把代码生成策略改为如图所示选项。
注意:引用该实体模型列库的运行程序项目也需要在app.config文件中加入连接字符配置。否则会出现“指定的命名连接在配置中找不到、非计划用于 EntityClient 提供程序或者无效”的错误
大体步骤如上,其他问题请自己探索发挥。希望对大家能有所帮助。