EF的应用

EF的应用

// An highlighted block

EF是 EntityFramework 的简称。在程序和数据库交互的过程中,起到了极大的方便。
EF的使用
首先在需要使用EF的项目单击,然后 Ctrl+Shift+a 找到ADO.NET实体数据模型。
image

单击添加后,会让选择模型内容,目前用到的就只有 (数据表,存储过程, 视图),所以选择添加 来自数据库的EF设计器
image
点击下一步,会让我们选择一个数据库,如果没有自己想要的数据库连接,可以自己新建连接。然后我们会看到这个image 选择是,然后直接下一步就可以了,别的都不用管。
这一步中就可以选择表,视图,或者存储过程等了,这个根据自己需求添加即可。 跟之前一样,别的什么都不用管,添加好之后的截图:
image

最后一步点击完成就可以了。由于文件比较大,所以添加后,可能会出现卡顿的现象。
添加后,解决方案中会增加这个文件夹:
image

EF的实际应用(增删改查)。
首先说明一下: 添加EF 之后,会自动的给程序添加实体类。

EF的增加:

首先实例化刚才添加的EF ,再用对象初始化器将自己要添加的对象实例化,然后使用EF添加再保存即可。案例:

EFDBEntities efdb = new EFDBEntities();
        Students objStudent = new Students()
        {
            StudentName = "小明",
            ClassId = 2,
            Gender = "男"
        };
        efdb.Students.Add(objStudent);
        int result = efdb.SaveChanges();
代码详解:

首先实例化了 EF
然后使用对象初始化器将自己要添加的对象实例化
接下来用自己实例化的EF 添加一下刚才实例化后的对象
最后保存到数据库中。
最后两部的解释:这两行代码看似是冗余的,但是实际上并不冗余,少了哪一行代码都不行。其中 第一行代码就是将这个对象添加到缓存中,但是并没有上交到数据库中,而第二行代码就提交到了数据库中,然后用一个int类型的参数接受执行的行数。

(修改)

想修改,就要先找到要修改的对象。

首先还是实例化EF
其次就是查找需要修改的学员的对象。 (由于修改中用到了查询,所以在这里就不介绍查询了。直接参照这个修改的查询就可以了。)
修改各个属性的值
提交保存
在这里用到了两种查询方式,用哪个都可以,完全看个人爱好。

首先将需要修改的对象 查询出来。

Students objStudent = efdb.Students.FirstOrDefault(s => s.StudentId == 1000006);
然后修改各个属性值就可以。

objStudent.StudentName = "张红利";
        objStudent.PhoneNumber = "99999999";
修改完之后提交保存。

int result = efdb.SaveChanges();
另一种查询的方式

Students objStudent = (from s in efdb.Students
                           where s.StudentId == 100006
                           select s).First<Students>();
通过主键列获取对象信息。

Students objStudent = efdb.Students.Find(100006);
注意:find只能查询主键也就是id 然后获取整个对象。里面不能查询姓名等。

如果取的是第一个值:

Students objStudents = (from s in students select s).FirstOrDefault();
如果取得是唯一值:

objStudents = (from s in students select s).SingleOrDefault();
两者的区别:

第一个值:获取学员中的第一个对象.(可以是多个)

唯一值:如果查询结果只有一个.(必须是一个)

First()、FirstOrDefault() 异同:
- 相同点:都用于获取结果集中的第一个元素
    
- 不同点:如果序列中不包含任何元素,前者返回null,后者返回默认值

Single()、SingleOrDefault()异同

- 相同点:都用于获取结果中的唯一元素

- 不同点:如果序列中不包含任何元素,前者返回null,后者返回默认值

- 特别注意:当数据源中包含多个元素时,这两个方法会产生异常。
(删除)

想删除,就要先找到要删除的对象。

首先实例化EF
查询需要删除的对象
从数据库中删除这个对象。
首先需要找到需要删除的学员对象

Students objStudent = efdb.Students.FirstOrDefault(s => s.StudentId == 100015);
然后从集合中删除对象

efdb.Students.Remove(objStudent);
最后保存到修改。

int result = efdb.SaveChanges();
.Net Framework 支持的规范函数

image
  转自 https://www.cnblogs.com/trumpblogs/p/10362089.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值