roker002
Commander
- Registriert
- Dez. 2007
- Beiträge
- 2.074
Hallo,
ich habe ein Problem und zwar, wenn ich versuche an mehrere Entities eine Assoziation zu vererben. Ich möchte eine Datenbank mittels Code First erstellen lassen. Dafür nutze ich Entity Framework 6 mit EDMX Datei. Ich möchte mit TPC (Table per Concret Type) arbeiten. Die Tabellen werden mit dieser Methode erstellt.
Vorher überschreibe ich im DbContext die OnModelCreating Methode...
Entity "A, B und C" sollen das Adressverzeichnis miterben, das eigentlich eine Abstrakte Klasse gehört.
Leider bekomme ich immer wieder die Fehlermeldung:
EmptyEntityBase ist die Abstrakte Klasse mit der Assoziation für Adressverzeichnis.
Ich habe schon versucht die Fremdschlüssel manuell zu mappen mit
Leider funktioniert das alles nicht. Hat jemand vielleicht mehr Erfahrung mit EF?
Übrigns, finde ich in VS 2013 keine Möglichkeit den Database generator Workflow auf etwas anderes als TPT umzustellen. Daher muss ich OnModelCreating überscheiben. Kennt jemand das Problem und die Lösung dazu?
ich habe ein Problem und zwar, wenn ich versuche an mehrere Entities eine Assoziation zu vererben. Ich möchte eine Datenbank mittels Code First erstellen lassen. Dafür nutze ich Entity Framework 6 mit EDMX Datei. Ich möchte mit TPC (Table per Concret Type) arbeiten. Die Tabellen werden mit dieser Methode erstellt.
Code:
private System.Data.Entity.ModelConfiguration.EntityTypeConfiguration<TEntity> RegisterEntity<TEntity>(System.Data.Entity.DbModelBuilder modelBuilder, String schemaName)
where TEntity : class
{
return modelBuilder.Entity<TEntity>().Map(m=>
{
m.MapInheritedProperties();
m.ToTable(typeof(TEntity).Name, schemaName);
});
}
Entity "A, B und C" sollen das Adressverzeichnis miterben, das eigentlich eine Abstrakte Klasse gehört.
Leider bekomme ich immer wieder die Fehlermeldung:
Die DAL.Tests.MkdDALContainerTests.MkdDALContainer_GenerateDB_Test-Testmethode hat eine Ausnahme ausgelöst:
System.Data.Entity.ModelConfiguration.ModelValidationException: One or more validation errors were detected during model generation:
AdressVerzeichnisId: : There is no property with name 'AdressVerzeichnisId' defined in the type referred to by Role 'EmptyEntityBaseSelf'.
EmptyEntityBase ist die Abstrakte Klasse mit der Assoziation für Adressverzeichnis.
Ich habe schon versucht die Fremdschlüssel manuell zu mappen mit
Code:
this.RegisterEntity<A>(modelBuilder, CurrentSchema).HasRequired(a => a.AdressVerzeichnis).WithMany().HasForeignKey(a => a.AdressVerzeichnisId).WillCascadeOnDelete(false);
Leider funktioniert das alles nicht. Hat jemand vielleicht mehr Erfahrung mit EF?
Übrigns, finde ich in VS 2013 keine Möglichkeit den Database generator Workflow auf etwas anderes als TPT umzustellen. Daher muss ich OnModelCreating überscheiben. Kennt jemand das Problem und die Lösung dazu?