使用entityframe工作

问题描述:

错误信息编辑以前的数据:使用entityframe工作

附加'ReadingDataStoringToLocation.destinationroute'类型的实体失败,因为同类型的另一实体已经有相同的主键值”

这里是我的代码。

DRoutes.airportid = Convert.ToInt32(route.SelectSingleNode("airportid").FirstChild.InnerText); 

DRoutes.resortid = Convert.ToInt32(route.SelectSingleNode("resortid").FirstChild.InnerText); 

DRoutes.name = route.SelectSingleNode("resortname").FirstChild.InnerText;          

DRoutes.airportname = route.SelectSingleNode("airportname").FirstChild.InnerText; 

DRoutes.id = data.id; 

Db.Entry(DRoutes).State = EntityState.Modified; 

Db.SaveChanges(); 
+0

与消息一样,您似乎希望将数据库中的项目修改为与主数据库中的其他项目具有相同值的项目。这应该不起作用,因为主键必须是唯一的。 – Yggraz

+0

是的,但我想更新数据库中的以前的数据,你可以告诉我,代码 –

看来这行是它给你的错误信息......删除它,也许?

DRoutes.id = data.id;