先新建一个mvc的项目:
点击确定
点击确定生成mvc项目了。
值得注意的是,默认工程是code First,代码优先,可以理解为现有代码,再根据代码生成了数据库。
而这里要讲的是DBFirst,也就是先前已经有数据库了,然后我们在编码。
但是不管是哪一种方式,对ef的使用都没有影响。
接下来我们在models添加EF。
右键–>添加–>新建项,选择数据,ADO.NET实体数据模型
点击添加
选择来自数据库的EF设计器
点击新建连接
这里就选择已经建好的数据库。
点击确定。
这里就会给web.config添加一个数据库连接字符串 这里的mvcEntities。之后我们就用这个字符串建立上下文关系。
点击下一步。
再点击下一步
选择你要操作的数据表。这里我只选择了UserProfile这个表。当然可以选择所有表。还有存储过程等等。点击完成就可以了。
完成之后就会多了这几个文件。
接下来就是怎么操作数据库。这里我们插入一条数据。
打开AccountModels.cs文件。首先要修改上下文的数据库连接字符串,之前说过默认工程是codefirst的所有这个model里已经有了UserProfile这个类。而我们刚才从数据库实体过来的也是这个类所以我们先把这个类删除。
之后再把原来默认的数据库初始化注释掉。
现在我们尝试向Userprofile插入一条数据。
然后我们试着注册一下。注册时随便写一下。我们不记录表单值。当然获取表单值可以再将代码写成下面的样子:
UserProfile user = new UserProfile(); //初始化数据表实体
user.UserName = model.UserName; //表单用户名值
user.PassWord = model.PassWord; //表单密码值
UsersContext context = new UsersContext(); //初始化数据库连接上下文
context.UserProfiles.Add(user); //插入数据
context.SaveChanges(); //保存变化
运行。
点击注册,然后查看数据库。
可以看出已经将数据插入表中,至于删改查也是大同小异,这里就不赘述了。