如何使用Entity Framework仅更新数据库中的一个列值?

时间:2016-08-29 06:29:25

标签: entity-framework

我有一个包含username列,password的表格。管理员可以为表格更新数据。

现在我想添加一个名为IsAgree的新列(作为标志),它需要在用户第一次登录时设置。但是在设置数据时,它不应该影响其他列数据,我只会将usename和Isagree标志作为对象发送。

flgDetail = { usename:"vis" Isallowed:True }

[Route("api/TermsAndCondition/setflag")]
public IHttpActionResult post(FlagDetails FlagDetail)
{
    var user = _context.table.Where(s => s.UserName == flagDetail.UserName);
}

我应该使用post还是put?

如何只更新一列?

它不应该影响其他列。

1 个答案:

答案 0 :(得分:1)

您可以使用postput。这不是问题。您可以更新它,如下所示。

[Route("api/TermsAndCondition/setflag")]
public IHttpActionResult post(FlagDetails flagDetail)
{
    var user = _context.table.Where(s => s.UserName == flagDetail.UserName);
    user.IsAgree =flagDetail.Isallowed;
   _context.SaveChanges()
}