首页 > EF中更新部分字段如何处理?

EF中更新部分字段如何处理?

假如说有个实体UserInfo ,其中的UserId是主键,定义个实体如下

UserInfo userInfonew = new UserInfo()

{
UserId=userInfo.UserId,
Email = userInfo.Email,
FirstName = userInfo.FirstName,
LastName = userInfo.LastName,
LastUpdateBy = GetCurrentUserGuid(),
LastUpdate = DateTime.Now
};

如果全部字段需要更新可以使用如下方法:

db.Entry(userInfonew).State = EntityState.Modified;

db.SaveChanges();

假如我们想更新部分字段,如只想更新Email的信可以采用以下方法:

db.UserInfoes.Attach(userInfonew);
db.Entry(userInfonew).Property(x => x.Email).IsModified = true;

db.SaveChanges();

  但是有个问题如果我们这个实体字段很多,比如说有20个字段,想更新其中18个字段,那不可能这18个字段都要定义一遍db.Entry(userInfonew).Property(x => x.field).IsModified = true;有没有其他办法处理这种情况?

http://stackoverflow.com/ques...

【热门文章】
【热门文章】