How to seed data with AddOrUpdate with a complex key in EF 4.3

点点圈 提交于 2019-12-17 21:42:21

问题


I am trying to seed a development database with some test data.

I have used context.People.AddOrUpdate(p => p.Id, people)); with much success.

I have another table that I need to seed, in which I would not know the primary key.

For example, I would want to AddOrUpdate based on the First and Last names matching.

I am unsure how to write the Expression correctly.

context.People.AddOrUpdate(p => p.FirstName && p.LastName, people);

is obviously incorrect, but I hope it conveys the solution I am looking for.


回答1:


Try this:

context.People.AddOrUpdate(p => new { p.FirstName, p.LastName }, people);



回答2:


If you got Only primitive types or enumeration types are supported in this context. because of using navigation property - consider adding foreign key property directly to the entity (maybe only with getter) and use it as Ladislav Mrnka proposed.



来源:https://stackoverflow.com/questions/10234912/how-to-seed-data-with-addorupdate-with-a-complex-key-in-ef-4-3

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!