c# entity-framework-4.3 seed linq-expressions ef-migrations

c# - Cómo sembrar datos con AddOrUpdate con una clave compleja en EF 4.3



entity-framework-4.3 seed (2)

Intento sembrar una base de datos de desarrollo con algunos datos de prueba.

He utilizado context.People.AddOrUpdate(p => p.Id, people)); con mucho exito

Tengo otra tabla que necesito sembrar, en la que no sabría la clave principal.

Por ejemplo, me gustaría AddOrUpdate en función de la coincidencia de nombres y apellidos.

No estoy seguro de cómo escribir la Expresión correctamente.

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

es obviamente incorrecto, pero espero que transmita la solución que estoy buscando.


Prueba esto:

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


Si obtuvo Only primitive types or enumeration types are supported in this context. debido al uso de propiedad de navegación, considere agregar propiedad de clave externa directamente a la entidad (quizás solo con getter) y usarla como lo propuso Ladislav Mrnka .