非常有用的两篇文章
EF有三种开发模式:Model First,Database First 和 Code First。 本文主要介绍Code First模式,Code First即代码优先,就是先编写业务实体模型类,然后通过程序包管理器控制台创建数据库。
一、安装EntityFramework
在项目上右键菜单,点击“管理NuGet程序包”,搜索“EntityFramework”,在项目中安装最新版本的EntityFramework。
二、修改配置文件
EntityFramework安装完成后,会自动生成一个App.confing文件,内容如下:
如果不添加数据库连接字符串,数据库默认会声称在App_Data文件夹下,在一般项目中我们还需修改此配置文件,内容如下:
三、创建实体模型类和DbContext
贴出部分实例代码:
////// 用户信息表 /// public class User : Entity { [Required] [StringLength(50)] ////// 用户名 /// public string Name { get; set; } [Required] [StringLength(20)] ////// 登录Id /// public string LoginId { get; set; } [Required] [StringLength(20)] ////// 登录密码 /// public string Password { get; set; } [StringLength(11)] ////// 手机号 /// public string Mobile { get; set; } [StringLength(100)] ////// 邮箱 /// public string Email { get; set; } [Required] ////// 用户状态(0:禁用;1:启用) /// public int Status { get; set; } }
以下是数据上下文类:
public class SAUnitOfWork : DbContext, IQueryableUnitOfWork { public DbSetOperation { get; set; } public DbSet PurchaseDetail { get; set; } public DbSet PurchaseHeader { get; set; } public DbSet Role { get; set; } public DbSet RoleOperations { get; set; } public DbSet SettlementDetail { get; set; } public DbSet SettlementHeader { get; set; } public DbSet User { get; set; } public DbSet UserRoles { get; set; }}
四、启用程序包管理器控制台
在VS菜单栏“工具”→“库程序包管理器”→打开“程序包管理器控制台”:
1.启用 Code First 迁移命令:Enable-Migrations
2.为迁移搭建基架:Add-Migration Initial3.开始迁移:Update-Database执行完以上三个命令后,你会发现在你的数据库服务实例中已经生成了数据库: