Acabo de actualizar a la última versión de código EF 4.1 usando NuGet y ahora recibo un error con respecto a mi asignación.EF 4.1 EntityType no tiene clave - compuesto
tengo esta clase
public class UserApplication
{
[Key, Column(Order = 0)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int UserId { get; set; }
[Key, Column(Order = 1)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int ApplicationId { get; set; }
[ForeignKey("ApplicationId")]
public virtual Application Application { get; set; }
public DateTime SubscribedDate { get; set; }
}
Y yo estoy recibiendo este error:
System.Data.Edm.EdmEntityType: : EntityType 'UserApplication' has no key defined. Define the key for this EntityType.
System.Data.Edm.EdmEntitySet: EntityType: EntitySet 'UserApplications' is based on type 'UserApplication' that has no keys defined.
que sin embargo puede hacer que funcione con la API de Fluido como esto
modelBuilder.Entity<UserApplication>().HasKey(obj => new {obj.UserId, obj.ApplicationId });
Cómo llegar EF no recoge la clave compuesta que he definido usando anotaciones? Estoy bastante seguro de que esto solía funcionar con un EF 4.1 anterior.
que tienen el mismo problema que tú ¿alguna vez encontrar una solución – Pandincus
no, no lo hice al final decidí definir todas las llaves utilizando el DbModelBuilder – kfuglsang
mismo problema, la parte divertida es que tengo dos clases con clave compuesta, una compila, la otra no ... –