Estoy tratando de insertar un registro. Este código funcionó pero dejó de funcionar. No sé por qué. Aquí está el código:LINQ to SQL Lanzamientos básicos de inserción: adjuntar o agregar no nueva entidad relacionada con la excepción
using (SAASDataContext dc = new SAASDataContext())
{
tblAssessment a2 = new tblAssessment();
a2.AssessmentCentreId = centreId;
a2.AttemptNumber = 1;
dc.tblAssessments.InsertOnSubmit(a2);
dc.SubmitChanges();
CurrentAssessmentId = a2.AssessmentId;
}
El código compila pero produce la excepción a continuación en la línea dc.SubmitChanges();
.
excepción lanzada: Se ha hecho
Un intento de Adjuntar o Agregar una entidad que no es nueva, quizá haber sido cargado desde otro DataContext. Esto no es compatible con .
Notas: AssessmentCentreId
es una clave externa en tblCentre
, centreId es una identificación válida centro ya existente, AssessmentCentreId y AttemptNumber no son los únicos campos nulos todos los demás columnas permiten valores nulos.
He buscado en Google pero todos los resultados parecen pertenecer a personas que intentan adjuntar entidades extraídas de otros DataContext desconectados. No estoy haciendo eso, así que estoy perplejo.
ACTUALIZACIÓN:
Adición
dc.DeferredLoadingEnabled = false;
en la parte superior del bloque de usar hace que funcione, pero me gustaría saber por qué coz no tengo ni idea por el momento la tecnología suficientemente avanzada siendo indistinguible de la magia en este momento :)
Le estoy dando un +1 por hacerme reir - además de tener el mismo problema ... – John