私は次のようになり、既存のテーブルの構造を有する:既存のDBの共有プライマリキーに変更しますか?
AnimalTable
-------------
|Id |
|Color |
|Weight |
|AnimalType |
-------------
CatTable
----------------
|Id |
|MeowSound |
|AnimalTableId |
----------------
DogTable
----------------
|Id |
|BarkSound |
|AnimalTableId |
----------------
AnimalType
は「猫」や「犬」のいずれかです。基本的には、それは「Table Per Type」構造体と、AnimalTableの追加の「AnimalType」識別器です。これは明らかに工夫された例ですが、私のプロジェクトはかなりの時間使用されている同様の設定を持っています。私たちはいくつかのものをEFコードファーストのアプローチを使用するように変換し始めています。この同じスキーマを使用したいので、抽象的なAnimal
クラスと具体的なCat
クラスとクラスがあります。
これを最初から設定するのはかなり簡単なようですが、EFを使用しているかのように既存のテーブルの主キーを変更するのが最善の方法はわかりません。誰もがこれを行い、いくつかのヒント/方向を提供することができますか?前もって感謝します。