c# entity-framework-4.1 dbcontext

c# - EF 4.1 OnModelCreating no llamado



entity-framework-4.1 dbcontext (1)

Están utilizando dos enfoques juntos: su cadena de conexión dice que quiere usar el modelo primero o la base de datos primero con EDMX, pero está escribiendo el contexto para usar el código primero / la api fluida para asignar la base de datos. Una vez que usa EDMX, OnModelCreating nunca se llama. Use una cadena de conexión SQL común sin recursos de metadatos si desea usar OnModelCreating .

<add name="AcmeDBContext" connectionString="data source=[server]; initial catalog=Acme;integrated security=True; multipleactiveresultsets=True;App=EntityFramework" providerName="System.Data.SqlClient" />

Tengo un problema con EF 4.1 que no llama a OnModelCreating para que pueda configurar tablas, etc. Tengo una base de datos existente. Aquí está mi cadena de conexión:

<add name="AcmeDBContext" connectionString="metadata=res://*/|res://*/|res://*/; provider=System.Data.SqlClient; provider connection string=&quot; data source=[server]; initial catalog=Acme;integrated security=True; multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

Aquí está mi clase heredada de 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); } }

He leído y leído en línea, pero no puedo señalar cuál es el problema. Nunca se llama a OnModelCreating y, por lo tanto, las excepciones que OnModelCreating que la entidad / clases (Vehicle, VehicleMake, VehicleModel) no existen en el contexto actual cuando trato de consultar algo.