私はEFで最初のプロジェクトを行っており、コードファーストモデルを使用することを計画しています。かなり古典的な「ルックアップテーブル」シナリオの処理に関するガイダンスを少し見つけようとしています。
私は、アドレスデータを永続化するというかなり標準的な状況を扱っています。だから、私は単純なアドレスDTOを持っています...
public class Address
{
public int Id { get; set; }
public virtual string StreetAddress1 { get; set; }
public virtual string StreetAddress2 { get; set; }
public virtual string City { get; set; }
public virtual string State { get; set; }
public virtual string ZipCode { get; set; }
}
州のプロパティに、標準の米国の2文字の州コードを保存したいと思います。検証の目的で、結果のアドレステーブルとかなり標準的な状態ルックアップテーブルの間に、標準の1対多の外部キー関係が必要です。そのテーブルには、おそらくID、2文字のコード、および完全な状態名を含む3番目の列が含まれます。
この状態ルックアップテーブルを使用して、ドロップダウンスタイルボックスなどにデータを入力し、状態を設定し、アドレスエンティティにファイルされた状態の検証としても機能することを期待します。かなり一般的なもの。それで、私はいくつかの簡単な(私は願っています)質問があります。
- EFにテーブルを作成させるためだけに、Stateエンティティを表すエンティティを作成する必要がありますか、それともDBCreation戦略にテーブル作成プロセスを含めてそこにシードするだけですか?
- 「ステートピッカー」を表示したい場所の「ビューモデル」として使用するために、そのエンティティを作成することは理にかなっていますか?
- 本当に2文字の状態コードをアドレスエンティティに格納したいだけですが、これは意味がありますか、それとも状態エンティティへのナビゲーションプロパティにしてから表示する方が意味がありますか?
ここで自分の主張を明確にするのに少し苦労したので、はっきりしない場合は、遠慮なく詳細を尋ねてください。
前もって感謝します。UIで適切に?