Я хочу удалить несколько записей, и я попытался, используя следующий код:SaveChanges() влияет только на одну строку
if (objDetail != null)
{
objContext.DetailVouchers.RemoveRange(
objContext.DetailVouchers.Where(t => t.REFNO == strRefNo));
objContext.SaveChanges();
}
Но это только удалили последнюю запись и не все из них.
Мой контекст Класс
class MainContext : DbContext
{
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
//base.OnModelCreating(modelBuilder);
Database.SetInitializer<MainContext>(null);
modelBuilder.Entity<MainVoucher>().ToTable("TBL_ACC_VOUCHER_MAIN");
modelBuilder.Entity<MainVoucher>().HasKey(t => new { t.REFNO });
modelBuilder.Entity<DetailVoucher>().ToTable("TBL_ACC_VOUCHER_DETAIL");
modelBuilder.Entity<DetailVoucher>().HasKey(t => new { t.REFNO });
}
}
и создать объект контекста класса как
MainContext objContext = new MainContext();
Сколько 'DetailVoucher' записей может соответствовать одному' REFNO'? Согласно вашей настройке модели ('Entity(). HasKey (t => t => new {t.REFNO})', ноль или один. –
Его показ 2 записи, но он удалил только последний –
В этом проблема то, в соответствии с конфигурацией ** модели **, 'DetailVoucher.REFNO' является ** уникальным **. –