菜的像徐坤
排名
7
文章
192
粉丝
15
评论
16
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

EF 框架操作数据库(修改数据)

6235人阅读 2021/3/16 11:48 总访问:959920 评论:0 收藏:0 手机
分类: Csharp

MVC 页面 方法一(通用,比较兼容)

  1.  //实例化数据库对象
  2.  oaEntities oaentities = new oaEntities();
  3.  //定义对象接收数据表中返回的对象(FirstOrDefault 表示返回第一条数据或者返回默认值)
  4.  UserInfo userinfo = oaentities.UserInfo.Where(a => a.sid == usermessage2.sid).FirstOrDefault();
  5.  //给字段重新值
  6.             userinfo.username = "姓名";
  7.             userinfo.Number = "学号";
  8.             userinfo.Class = "班级";
  9.             userinfo.state = "状态";
  10.  
  11.  //调用方法写入数据库(返回受影响行数)
  12.             oaentities.SaveChanges();

MVC 页面 方法二(直接更改,不用查数据库,效率最快)(缺点,每个字段都会被更改,未赋值的字段将被覆盖成NULL )

  1.  //实例化数据库对象
  2.  oaEntities oaentities = new oaEntities();
  3.  
  4.  oaentities.Entry(usermessage2).State = System.Data.EntityState.Modified;
  5.  oaentities.SaveChanges();
  6.    //Modified  修改
  7.    //Added   添加
  8.    //Deleted  删除
  9.    //Detached  对象没有被添加到上下文中的状态
  10.    //Unchanged  对象在上下文中没有任何改变,没有任何操作的状态
  11.    
  12.    
  13.    
  14.    
  15.    //解决:未赋值的字段将被覆盖成NULL
  16.    
  17.         oaentities.UserInfo.Attach(usermessage2);
  18.         
  19.             var entry = oaentities.Entry(usermessage2);
  20.             entry.Property("username").IsModified = true//设置需要修改的字段为true
  21.             entry.Property("Number").IsModified = true;
  22.    
  23.          oaentities.SaveChanges();

 

MVC 页面 方法三(使用SQL语句 )(不常用)

  1. oaentities.Database.ExecuteSqlCommand("SQL语句"new SqlParameter("userid", userid))



评价

NET Core 使用 EF Code First

下面这些内容很老了看这篇:https://www.tnblog.net/aojiancc2/article/details/5365 项目使用多层,把数据库访问...

C out、rEF关键字的用法和区别

说说自己对out、ref的认识,面试问到的几率很高哟。out:classProgram { /* *out、ref都是引用传递,传递后使用都会改变...

Net Core使用EF之DB First

一.新建一个.net core的MVC项目新建好项目后,不能像以前一样直接在新建项中添加ef了,需要用命令在添加ef的依赖二.使用Nug...

EF6动态添加条件

例如我们要匹配一个集合中的所有关键字,我们首先想到的做法是这样的publicList<Article>GetArtByKeys(List<strin...

Net Core使用依赖注入来装载EF的上下文对象

妹子情人节快乐~.net core中用了不少的依赖注入,官方文档中也推荐使用。这样使用依赖注入来管理ef对象,还是比较科学,比如...

NET CORE配置EF连接字符串。windows验证的连接字符串配置

在appsettings.json中配置好连接字符串{"ConnectionStrings":{ "BloggingDatabase":"Server=(lo...

使用REFit框架访问REST接口

改装是一个类型安全的REST开源库,是一套基于RESTful架构的.NET客户端实现,内部使用HttpClient类封装,可通过改装更加简单...

docker启动报错 No dEFault Boot2Docker ISO found locally downloading the latest

这是因为,启动时如果检测到没有 Boot2Docker,就会去下载,这个下载过程出现网络连接上的错误了,导致启动失败。可以去下...

扩展EF自动映射需要查询的字段(表达式树Expression),动态构建返回值

Entity Framework 动态构造select表达式比如我们需要返回某些字段会采用如下的写法但是发现每次都去写select如果字段很多不...

layer弹窗+EF引入独立页面进行操作

使用layer弹窗进行操作的时候我们可以使用type=2,来把一个独立的页面指向content内容例如我们有一个表格,点击添加后,我...

Entity Framework常用查询,EF joinEF多表联查,原生sql。EF 多表查询。AsNoTracking

直接执行sql语句//全表查询 List<Users>ulist=se.Database.SqlQuery<Users>("select*fromusers").T...

EF Code First常用命令

Enable-Migrations启用数据库迁移Enable-Migrations –EnableAutomaticMigrations 启动自动迁移Add-Migration Name(名字可...

EF Code First 多对多关系配置

Code First配置多对多关系,常规有两种方法例如我们有一张学生表,和一张课程表,学生和课程是一个多对多的关系方法1:单纯...

解决:基础提供程序在 Open 上失败,EF无法生成实体问题

在学校图书馆的电脑上安装VS2013和SQL R2后,调试项目报错:基础提供程序在 Open 上失败怀疑是数据库的问题,然后删除数据...

net core过滤器。net core过滤器中获取依赖注入对象。net core过滤器中使用依赖注入。ServicEFilter 

虽然对象都可以直接实例化得到。但是所有的对象依赖关系,都用DI容器去管理,这样后面想要更换对象的时候也非常方便,项目...

EF状态System.Data.EntityState的一点理解

System.Data.EntityState一共有五种状态分别是Added,Deleted,Modified,UnChanged,Detached下面给一个简单的解释System.Data...