Ho un problema con EF 4.1 non chiamando OnModelCreating
in modo che possa configurare tabelle ecc. Ho un database esistente. Qui è la mia stringa di connessione:EF 4.1 OnModelCreating non chiamato
<add name="AcmeDBContext"
connectionString="metadata=res://*/|res://*/|res://*/;
provider=System.Data.SqlClient;
provider connection string="
data source=[server];
initial catalog=Acme;integrated security=True;
multipleactiveresultsets=True;App=EntityFramework""
providerName="System.Data.EntityClient" />
ecco la mia classe ereditata da DbContext
:
public class AcmeDBContext : DbContext
{
public AcmeDBContext()
: base()
{
Database.SetInitializer<AcmeDBContext>(null);
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<IncludeMetadataConvention>();
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
modelBuilder.Entity<Vehicle>().ToTable("tblVehicle");
modelBuilder.Entity<VehicleMake>().ToTable("tblVehicleMake");
modelBuilder.Entity<VehicleModel>().ToTable("tblVehicleModel");
base.OnModelCreating(modelBuilder);
}
}
Ho letto e leggere online, ma non riesco a sottolineare quale sia il problema. Lo OnModelCreating
non viene mai chiamato e quindi le eccezioni dicono che l'entità/le classi (Vehicle, VehicleMake, VehicleModel) non esistono nel contesto corrente quando provo a interrogare qualcosa.
Come stai creando un'istanza del contesto nel codice? – Yuck