C#实体框架:如何更新记录和更改外键引用?
我有两张桌子: 客户端(id、客户端名称) 项目(id、clientid、projecttitle)外键引用clientid->clients.id 当我加载带有EF的项目时,如下所示:C#实体框架:如何更新记录和更改外键引用?,c#,entity-framework,C#,Entity Framework,我有两张桌子: 客户端(id、客户端名称) 项目(id、clientid、projecttitle)外键引用clientid->clients.id 当我加载带有EF的项目时,如下所示: thisProject = (from p in dataEntity.projects.Include("client") where p.id == INTVALUE select p).FirstOrDefault(); var thisPro
thisProject = (from p in dataEntity.projects.Include("client")
where p.id == INTVALUE
select p).FirstOrDefault();
var thisProject = (from p in dataEntity.projects.Include("client")
where p.id == INTVALUE
select p).FirstOrDefault();
var newClient = dataEntity.clients.FirstOrDefault(); // change to suit
thisProject.Client = newClient;
然后,我更改了此项目中的一些值,并希望更改与不同客户端的关系,这将不允许我修改项目表中的clientid字段
希望我解释得足够好,谢谢你需要这样做:
thisProject = (from p in dataEntity.projects.Include("client")
where p.id == INTVALUE
select p).FirstOrDefault();
var thisProject = (from p in dataEntity.projects.Include("client")
where p.id == INTVALUE
select p).FirstOrDefault();
var newClient = dataEntity.clients.FirstOrDefault(); // change to suit
thisProject.Client = newClient;
您不能只更改EntityKey AFAIK-您需要实际更改导航引用
嗯。太好了,很高兴你把它整理好了。