私は次のエンティティモデルを持っています:
一連のタスクを追加し、これらのタスクの処理を開始します。各タスクの完了後、それに関する情報をログに記録したいと考えています。
私は次のコードでそうします:
TASK scheduledTask = entities.TASKs.First(x => x.TASK_NAME == e.ClassName);
scheduledTask.NEXT_RUN = e.NextRun;
entities.SaveChanges();
TASK_LOG logMsg = new TASK_LOG()
{
TASK = scheduledTask,
MESSAGE = e.TaskResult.Message,
STATUS = e.TaskResult.Status ? "Successful" : "Failure",
TIMESTAMP = e.CompletedTime
};
entities.TASK_LOG.AddObject(logMsg);
entities.SaveChanges();
ただし、TASK_LOG オブジェクトの ID プロパティを変更できないという例外が発生します。logMsg
コードでオブジェクト ID プロパティを変更する方法がわかりません。
注: 両方のエンティティの ID プロパティはデータベースによって生成され、StoreGeneratedPattern
ID に設定されます。
編集:
2 回目の実行 - 最初の呼び出しで接続が開いている/利用可能であるというエラーが表示されSaveChanges
ます。
3 回目の実行 - エラー Store update、insert、または delete ステートメントを取得すると、予期しない行数 (0) に影響しました。最後のSaveChanges
電話で。
このエラーの不一致により、修正が困難になっています。