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); });
}
}
Каков наилучший способ справиться с этим сценарием?