После формирования списков я хотел бы вставить эти отдельные списки для Defectmelmaster и Defectmeleffectivity.
Однако после того, как дефектmelmaster AddRangeAsync завершается успешно, дефектмелеффективность AddRange выдает ошибку
Невозможно отследить объект, поскольку тот же экземпляр...
Код — Service.cs — это место, где формируются списки и вызываются методы вставки репо.
Код: Выделить всё
Service.cs:
foreach (var val in entities)
{
var defectMelMasterQuery = FormatDefectMelMasterQuery(val, userRegisterId);
var defectMelEffectivityQuery = FormatDefectMelEffectivityQuery(val, userRegisterId);
}
defectMelMasterQueryList.Add(defectMelMasterQuery);
defectMelEffectivityQueryList.Add(defectMelEffectivityQuery);
await _defectMelMasterRepository.InsertDefectMelMaster(defectMelMasterQueryList, cancellationToken);
await _defectMelEffectivityRepo.InsertDefectMelEffectivity(defectMelEffectivityQueryList, cancellationToken); //throws the error
Код: Выделить всё
DefectMelEffectivityRepo.csКод: Выделить всё
//DefectMelEffectivityRepo
await _dbContext.Set().
AddRangeAsync(defectMelEffectivityQueryList, cancellationToken);
await _dbContext.SaveChangesAsync(cancellationToken);
- defectmeleffectivityentity.cs
Код: Выделить всё
public void Configure(EntityTypeBuilder builder)
{
builder.ToTable("DEFECT_MEL_EFFECTIVITY", schema: "XXX");
builder.Ignore(x => x.Id);
builder.HasKey(f => new {f.AcType, f.AcSeries,
f.MelNumber, f.MelSub, f.Ac, f.Company});
}
- defectmelmasterentity.cs
Код: Выделить всё
public void Configure(EntityTypeBuilder builder)
{
builder.ToTable("DEFECT_MEL_MASTER", schema: "XXX");
builder.Ignore(x => x.Id);
builder.HasKey(f => new {f.AcType, f.AcSeries,
f.MelNumber, f.MelSub, f.Company});
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... be-tracked
Мобильная версия