我正在尝试更新 C# 中的 LINQ 记录,但在SubmitChanges
调用时会引发错误。我知道约会有时会出现拼写错误,但我不小心这样编码。给出的异常/错误是:
{"类型为“约会”的对象的成员“约会”的值已更改。\r\n无法更改定义对象身份的成员。\r\n请考虑添加具有新身份的新对象并删除现有对象."} System.Exception {System.InvalidOperationException}
我不允许删除旧记录并添加新记录。我的代码如下:
public bool AppointmentReschedule(string patientFirstName, string patientLastName, string doctorFirstName, string doctorLastName, DateTime newTime)
{
LINQClassesDataContext dc = new LINQClassesDataContext();
try
{
Appointment a = getAppointment(patientFirstName, patientLastName, doctorFirstName, doctorLastName);
if (a == null) throw new FaultException("Unable to retrieve appointment data");
var appointments = dc.Appointments;
foreach (Appointment b in appointments)
{
if (b.Appiontment == a.Appiontment && b.HealthInsuranceNo == a.HealthInsuranceNo && b.MedicalRegistrationNo == a.MedicalRegistrationNo)
{
b.Appiontment = newTime;
}
}
dc.SubmitChanges();
}
catch (Exception ex)
{
throw new FaultException("Unable to update data");
}
return true;
}