Dapper FastCrud:复合主键映射

时间:2018-10-01 22:17:58

标签: c# entity-framework dapper dapper-fastcrud

我正在使用Dapper.FastCrud Dapper扩展。当更改组合键之一时,更新方法无法正常工作。

例如在MyClass中,ID1和ID2是组合键的一部分。如果用户修改了ID2属性,则更新无法正常工作。

using Dapper.FastCrud; (https://dapper-tutorial.net/dapper-fastcrud)

public class MyClass
{
  [Key]
  public int ID1 { get; set; }

  [Key]
  public int ID2 { get; set; }

  public DateTime UpdatedOn { get; set; }
  public string UpdatedBy { get; set; }
}

private void Save(List<MyClass> currItems)
{
    using (IDbConnection con = db.CreateConnection())
    {
        var changedItems = currItems.Where(x => x.EntityState == EntityStateType.Changed).ToList();
        if (changedtos.Count > 0)
           changedtos.ForEach(x => { con.Update(x); });
    }
}

处理这种情况的最佳方法是什么?

0 个答案:

没有答案