EF操作数据库的步骤和一些简单操作语句
这里是写给我自己做记录的,不会写成一篇很好的博客,也不会置顶,如果有朋友看到了,而且觉得里面的内容不咋的,希望见谅哈!
关于这部分内容,这里推荐一篇总结的非常好的博客,如果你点击进来了,那么请略过下面的内容,直接点击这个链接,因为写的真的不错:https://www.cnblogs.com/gosky/p/5751815.html。
我个人还没有对ef相关的内容进行详细的整理,所以这篇随笔的参考意义不大,只是贴一些代码上去,以后有机会有时间,会对相关内容做一个总结。
使用ef操作数据库的详细步骤主要分为一下几步:
1.创建ef实体数据库模型:
在某个项目上点击右键 添加 ==》数据 ==》ado.net实体数据库模型 ==》然后按照提示去走;
2.实例化上下文
首先找到需要实例化的上下文的名字,在ef实体里的这个文件里:
打开该文件后,代码如下:
红框处的名字就是该实体的上下文。
实例化上下文的具体做法如下:
firstdbentities1 db = new firstdbentities1();
3.使用上下文操作数据库 之 查询操作
(1)根据主键id获取某个表的数据
操作方法为:
userinfo userinfo = new userinfo(); userinfo = db.userinfo.find(id);
其中userinfo是该数据表对应的实体类的类名,执行该操作后,即可获取主键id为某个数的那一行的数据,然后通过 userinfo.xxx 即可获去相应字段的值;
(2)获取某个数据表全部数据
操作方法为:
list<userinfo> list = new list<userinfo>
list = db.userinfo.tolist();
执行该操作后久会把该数据表中的所有数据都取出来,存放在一个list集合中;
(3)根据其他条件进行查询
var user = db.userinfo.where(u => u.username == "aaa" );
这是使用lambda表达式进行查询,查询的结果是一个list集合,通过下面的方法可以遍历取出这些数据:
foreach(var item in user) { xxx = item.yyyy; }
4.使用上下文操作数据库 之 增
创建一个实体数据对象,并对其各个字段赋值,然后使用上下文执行增加操作,
userinfo user = new userinfo(); user.username = "bbb"; user.password = "23456"; db.userinfo.add(user); db.savechanges();
需要注意的是,在执行完添加操作之后,需要执行 db.savechanges() 操作, 这句话的意思是,把我们修改的内容更新到数据库中。
5.使用长下文操作数据库 之 改
首先要指定你修改的某一行的id:
userinfo user = new userinfo(); user.userid = 3;
接下来对要修改的字段进行重新赋值:
user.username = "ccc"; user.password = "1234567";
然后执行修改操作:
db.entry(user).state = entitystate.modified;
最后将修改保存到数据库中
db.savechanges();
如果只修改单个属性,比如只修改username,则写为:
userinfo user = new userinfo(); user.userid = 3; user.username = "ddd"; db.entry(user ).property(u => u.username).ismodified = true; db.savechanges();
6. 使用长下文操作数据库 之 删
userinfo user = new userinfo(); user.userid = 3; db.entry<userinfo>(user).state = system.data.entity.entitystate.deleted; db.savechanges();
好了,先简单写一下,只是草草记录,后续有时间会进行系统的归纳总结。
上一篇: MySql开启binlong的代码实现