我正在爲我的項目使用ADO.NET實體框架,並且我是這項技術的新成員。 有2個關聯表,其中一個是「personel」,另一個是「departmant」。當我試圖更新personel的部門,我得到這個錯誤:如何更新有關係的實體?
[System.InvalidOperationException] = {"'DEPARTMANID' property is piece of object's key information and can not be changed. "}
這是我的代碼下面更新;
int DepartmantId = 1;
int PersonelID = 2;
try
{
using (FirebirdEntityz fe = new FirebirdEntityz())
{
var query = (from c in fe.PERSONEL.Include("DEPARTMANT") where c.PERSONELID == PersonelID select c).First();
query.NAME = NAME;
query.SURNAME = SURNAME;
query.DEPARTMANT.DEPARTMANTID = DepartmantId;
int result = fe.SaveChanges();
if (result > 0)
{
MessageBox.Show(result + " record updated");
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.InnerException.ToString());
}
旁註:它的 「部門」 和 「人事」 :) – Alex 2009-08-09 00:53:42