105

我正在尝试使用一些测试数据为开发数据库播种。

我已经使用context.People.AddOrUpdate(p => p.Id, people));了很多成功。

我有另一个需要播种的表,其中我不知道主键。

例如,我想根据名字和姓氏匹配来添加或更新。

我不确定如何正确编写表达式。

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

显然是不正确的,但我希望它传达了我正在寻找的解决方案。

4

2 回答 2

208

试试这个:

context.People.AddOrUpdate(p => new { p.FirstName, p.LastName }, people);
于 2012-04-19T20:51:32.273 回答
1

如果您Only primitive types or enumeration types are supported in this context.因为使用导航属性而得到 - 考虑将外键属性直接添加到实体(可能仅使用 getter)并按照Ladislav Mrnka 的建议使用它。

于 2017-02-17T12:28:24.187 回答