J'essaye d'effectuer une mise à jour directe en utilisant LinqToSQL, et je n'arrive tout simplement pas à le faire fonctionner.Problème de mise à jour LinqToSql lors du changement de parent
Voici le modèle de données: il y a un timesheet_entry et client. Un client a beaucoup timesheet_entries. C'est une simple relation de clé étrangère.
Si je modifie un timesheet_entry existant, j'obtiens une exception si je change le customer_id.
Voici ma tentative pour le code. Quelqu'un peut-il m'aider ici?
internal void CommitChangesToEntry(Timesheet_Entry entry)
{
Timesheet_Entry latest = (from e
in m_dataContext.Timesheet_Entries
where e.Timesheet_Entry_ID == entry.Timesheet_Entry_ID
select e).First();
latest.Entry_Start_DateTime = entry.Entry_Start_DateTime;
latest.Entry_End_DateTime = entry.Entry_End_DateTime;
latest.Task_Description = entry.Task_Description;
// Comment out this line of code and it
// doesn't throw an exception
latest.Customer_ID = entry.Customer_ID;
m_dataContext.SubmitChanges(); // This throws a NotSupportedException
}
L'erreur est: « Une tentative a été faite pour attacher ou ajouter une entité qui n'est pas nouveau, peut-être avoir été chargé d'une autre DataContext non prise en charge. ».
utilisez-vous DataContext pour de nombreux SubmitChanges? –