私はEntity Frameworkのが含まれている 'マスター' のVisual Studioプロジェクトがに似マッピングがあります。継承
public class UserMap : EntityTypeConfiguration<User>
{
public UserMap()
{
// Table Mapping
ToTable("Users");
this.Property(x => x.Username).HasColumnName("Username");
// Other mapping goes here
}
}
マッピングされているUser
実体が単純なPOCOです:
public class User {
public string Username { get; set; }
// Other properties omitted for brevity
}
次のExtendedUser
Entity/POCOを持ち、EFを使用してマッピングされた2番目の '子' VSプロジェクト/アプリケーション(マスタープロジェクトを参照しています)があります。
このエンティティには余分なフィールドはありませんが、そのアプリケーション固有のさまざまなリレーションシップコレクションがあります。
私の問題は、最初のVSプロジェクトでUser
のために定義されたマッピングを継承したいということです。マスターUser
クラスは他のいくつかのプロジェクトで使用されるので、マッピングの重複を避ける必要があります。
Iのようにマッピングを定義する場合:
public class ExtendedUserMap : UserMap
{
public UserMap()
{
}
}
マッピングはタイプEntityTypeConfiguration<User>
ないEntityTypeConfiguration<ExtendedUser>
であるようそれからExtendedUser
特性のいずれかを参照することはできません。
明らかに私は2つのクラスから継承することはできませんので、私がやりたいことを達成するための適切な方法が不明です。
User
マッピングを使用でき、ExtendedUser
のナビゲーションプロパティも含めることができるように、ExtendedUserMap
を定義するにはどうすればよいですか?