Я переместил старую часть кода из EF в linq2db, и когда мне пришлось добавить новый элемент с идентификатором, на который ссылается внутренний элемент, мне пришлось выполнить следующий код
if (axAnag == null)
{
axAnag = new DataModels.AX();
var idAnag= context.InsertWithInt32Identity(axAnag);
axAnag.IdAnagrafica = idAnag;
}
и ниже в коде
fk.AxAnagraficaAssicurati = axAnag;
fk.StatusProtocollo = statusProtocollo;
fk.DataEsclusione = newAnagrafica.DataEsclusione ?? condizione.DataAnnullamento;
fk.DataInclusione = newAnagrafica.DataInclusione;
fk.DerogaEta = newAnagrafica.DerogaEta;
fk.ProgrCategoria = condizione.ProgessivoCategoria;
fk.IdCondizione = condizione.Id;
fk.IdCategoria = condizione.IdCategoria;
fk.DataOperazioneInclusione = DateTime.Now;
fk.HYPER = newAnagrafica.HyperService;
//GPA ticket 2017-0017962
fk.LimiteEtaSuperato = newAnagrafica.IsLimiteEtaSuperato;
//GPA cr24
fk.FlagConteggioRegolazionePremio = newAnagrafica.FlagConteggioRegolazionePremio;
fk.IdAnagrafica = axAnag.IdAnagrafica;
Что мне не так понятно, почему я должен добавить идентификатор и весь ссылочный элемент?
fk.AxAnagraficaAssicurati = axAnag;
fk.IdAnagrafica = axAnag.IdAnagrafica;
В модели с лесами у меня есть
[Association(ThisKey = "IdAnagrafica", OtherKey = "IdAnagrafica", CanBeNull = true, Relationship = Relationship.ManyToOne, KeyName = "FK_BENEFIT_FK_ANAGRAFICA_ASS_POLIZZE_ANAGRAFICA", BackReferenceName = "BenefitFkAnagraficaAssPolizze")]
public AxAnagraficaAssicurati AxAnagraficaAssicurati { get; set; }
Разве этого не достаточно, чтобы поставить один?а также связанные с вставкой axAnag
есть ли способ, которым я могу избежать
var idAnag= context.InsertWithInt32Identity(axAnag);
axAnag.IdAnagrafica = idAnag;
Спасибо