ich eine Benutzer-Rollen Viele-zu-viele-Beziehung habe, die von diesem Auszug aus einer EntityTypeConfiguration<Role>
abgeleiteten Klasse angegeben, die mir Schemata für einzelne Tabellen specifiy ermöglicht, zB:Wie kann ein Schema für eine Viele-zu-Viele-Beziehungstabelle angegeben werden?
[Schema(SchemaNames.ParkPay)]
class WeekDayConfig : EntityTypeConfigurationWithSchema<WeekDay>
{
internal WeekDayConfig()
{
Ignore(t => t.IsDeleted);
Property(p => p.Name)
.IsRequired()
.HasMaxLength(20);
}
}
nun für Role
, die Konfiguration Klasse enthält diesen Code und die resultierende Tabelle UserRole
wird unter dem Schema 'dbo' erstellt, nicht mein gewünschtes Schema. Dies ist der Code:
[Schema(SchemaNames.ParkPay)]
internal class RoleConfig : EntityTypeConfigurationWithSchema<Role>
{
public RoleConfig()
{
HasMany(t => t.Users)
.WithMany(t => t.Roles)
.Map(m =>
{
m.ToTable("UserRole");
m.MapLeftKey("RoleId");
m.MapRightKey("UserId");
});
}
}
Gibt es etwas, was ich tun kann, außer Skript während der Einfahrphase der Initialisierung eine Schemaänderung, hat Tabelle UserRole
unter dem ‚ParkPay‘ Schema erstellt und nicht das ‚dbo‘ Schema?
Sie dies versuchen Haben? Sieht aus wie eine Überladung von 'ToTable': http://stackoverflow.com/questions/6028375/entity-framework-code-first-many-to-many-setup-for-existing-tables – rliu