Dapper FastCrud: составное сопоставление первичных ключей

Я использую Dapper.FastCrud Dapper Extension. Метод обновления не работает должным образом при изменении одного из составных ключей.

Например, в 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 ответов

Другие вопросы по тегам