我有以下实体模型:
我添加了一堆任务并开始处理这些任务。每次任务完成后,我想记录有关它的信息。
我使用以下代码执行此操作:
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
- Identity。
编辑:
第二次运行 - 现在我收到关于在第一次SaveChanges
通话时打开/可用连接的错误。
第 3 次运行 - 出现错误 Store update、insert 或 delete 语句影响了意外数量的行 (0)。在最后一次SaveChanges
通话中。
这种错误不一致使其难以修复。