14

私はEntity Framework 6を​​使用していますが、リリースしたばかりで、次のことが必要です。

1 - テーブル列を Enum にマップします。

2 - ルックアップ テーブル (Id と Name の 2 つの列がある) を Enum にマップします。

これはEntity Framework 6で可能ですか?

ありがとう、ミゲル

4

1 に答える 1

15

通常、テーブルを列挙型にマップしません。ルックアップ テーブルにあるものに基づいて列挙型を定義し、これらのテーブルをモデルに含めずに使用するだけです。たとえば、Northwind.Categories テーブルの場合:

ID  Name            Description
1   Beverages       Soft drinks, coffees, teas, beers, and ales
2   Condiments      Sweet and savory sauces, relishes, spreads, and seasonings
3   Confections     Desserts, candies, and sweet breads
4   Dairy Products  Cheeses
5   Grains/Cereals  Breads, crackers, pasta, and cereal
6   Meat/Poultry    Prepared meats
7   Produce         Dried fruit and bean curd
8   Seafood         Seaweed and fish

次の列挙型を作成します

public enum Categories
{
    Beverages = 1,
    Condiments = 2,
    Confections = 3,
    Dairy_Products = 4,
    Grains_Cereals = 5,
    Meat_Poultry = 6,
    Produce = 7,
    Seafood = 8,
}

列挙型の値がデータベースの値に対応していることを確認してください)、それをアプリケーションで使用しますが、Categories テーブルを含めません。つまり、この列挙型を、Categories テーブルへの外部キーであるプロパティの型として使用します。データベース。または、たとえば説明が必要な場合は、Categories テーブルに対応するエンティティを作成し、列挙型 (上記で定義) をキー プロパティ タイプとして使用します。次に、データベース内で Categories テーブルへの外部キーであるすべてのプロパティに列挙型を使用します。

于 2013-10-23T20:20:19.447 に答える