实体框架 - 仅更新发送值

时间:2018-04-03 12:06:32

标签: entity-framework

我想更新我的实体只是为了发送值。

public HttpResponseMessage UpdateDepartment(Department department)
{
    var ok = _departmentDAL.Update(department);
    return Request.CreateResponse(HttpStatusCode.OK, ok);
}

我和邮递员只向我的api发送2个值。 postman

在我的通用存储库库中,我的更新功能就像。

public int Update(TEntity entity)
{
    var updatedEntity = _context.Entry(entity);
    updatedEntity.State = EntityState.Modified;

    return _context.SaveChanges();
}

我得到了实体验证错误。我只想修改实体的 not null 值。

是否可以或者我应该从数据库中获取所有具有我的Id属性的实体,然后在更改属性后发送到实体框架?

1 个答案:

答案 0 :(得分:0)

最干净的解决方案是不提供可以更新flexDirection: 'row'所需字段的通用界面。而是提供针对您要支持的实际用例量身定制的API。此API应接收仅包含特定用例允许的数据的命令。命令也可以验证他们的数据(这里我使用Department进行验证)。此外,如果用例已明确定义并分离,则可以更细化地处理授权。

System.ComponentModel.DataAnnotations