1 つのデータベースに 2 つのスキーマがあり、変更できるスキーマは 1 つだけです。
これを行っている理由は、1 対 1 のマッピングがあるためです。つまり、追加のフィールドを Club テーブルに追加する必要があります。したがって、変更できないスキーマからテーブルをサブクラス化しました。
ベース テーブルには既にレコードが存在するため、子テーブルのみに挿入したいと考えていますが、OurClub というテーブルに最初の挿入を行う必要があります。
システム内の他のデータへのリンクを持つ親テーブル TheirClub が必要です。これを使用することで、事前にマップ済みのエンティティを再マップする必要がなくなります。
public class OurClub : TheirClub
{
public virtual int ClubId { get; set; }
public virtual int ClubName { get; set; }
}
public class TheirClub //The schema we cant change
{
public virtual int ClubId { get; set; }
public virtual List<string> Contacts { get; set; }
}
OurClub に挿入しようとするときはいつでも、TherClub にも挿入しようとします。この動作は望ましくありません。
これを回避するための提案はありますか?