Estoy intentando sembrar una base de datos de desarrollo con algunos datos de prueba.Cómo inicializar datos con AddOrUpdate con una clave compleja en EF 4.3
He usado context.People.AddOrUpdate(p => p.Id, people));
con mucho éxito.
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.
@LadislavMrnka ¿y si el identificador tiene que ser un tipo complejo, es decir 'context.People.AddOrUpdate (p => nueva {p.Name.FirstName, p.Name.LastName}, personas)'? – gabe
@LadislavMrnka, también, ¿qué pasa si la propiedad es un tipo anulable? es decir 'context.People.AddOrUpdate (p => new {p.Birthdate}, personas)'? – stack247
Algo a tener en cuenta aquí es que la colección 'personas' debe ser un ARRAY y no una lista. Si tiene una lista de entidades, simplemente puede llamar a .ToArray() en la lista. Luché con eso :) - Buena respuesta –