CREATE TABLE Lodging
(
LodgingID int PRIMARY KEY IDENTITY,
LodgingName nvarchar(100),
IsResort bit NOT NULL,
ResortChainOwner nvarchar(100) NOT NULL,
...
)
Lodging
Lodging
DB テーブルはエンティティにマップされます。次に、TPH 継承を実装しました。
•Lodging
実体をベースに
Resort
• エンティティから派生した新しいエンティティを作成しましたLodging
。
• リゾート固有のプロパティResortChainOwner
をResort
エンティティ タイプに移動し、(SSDL で)ResortChainOwner's
デフォルト値を " notApplicable
"に設定しました。
• 宿泊テーブルのIsResort
欄は差別的な欄です。IsResort
列に が含まれている場合0
、レコードはLodging
エンティティに実体化され、列に が含まれている場合、レコードはエンティティに実体1
化されますResort
次のコードSaveChanges
で が呼び出されると、EF はフィールドの既定値を (挿入コマンドに) 提供する必要がありますResortChainOwner
が、代わりにNull
var lodging = new Lodging();
...
context.Lodgings.AddObject(lodging);
context.SaveChanges();
ResortChainOwner
では、挿入時にEFに列のデフォルト値を強制的に提供させるにはどうすればよいですか?
ありがとうございました