3

私は次のものを持っています

[DataContractAttribute]
public class Animal
{
    [Key]
    [XmlElement(ElementName = "Id")]
    [DataMember()]
    public Guid Id
    {
        get;
        set;
    }

    [XmlElement(ElementName = "AnimalType")]
    [DataMember()]
    public List<AnimalType> AnimalType
    {
        get;
        set;
    }
 }

そして、EFを使用したコードファーストアプローチを使用してテーブルにマップします

  modelBuilder.Entity<Animal>().ToTable("Animal");

ご覧のとおり、複雑なマッピングは実行していませんが、AnimalType 列挙のリストは、DB 内の列/テーブルに自動的にマップされませんでした。列挙リストのマッピングを制御するには、モデル ビルダーにコードを追加する必要がありますか?

4

2 に答える 2

8

EF CTP5 の時点では、列挙型はまだサポートされていません。チームは、2011 年の第 1 四半期にリリースされる予定の次の RTM バージョンで列挙型を完全にサポートする予定であると発表しました。

于 2010-12-15T18:59:04.773 に答える
1

私は長い間、列挙型がEFによってサポートされていなかったことを知っていますが、それがまだ当てはまるかどうかはわかりません。

いずれにせよ、EFに別のエンティティ以外のタイプのリストを処理させることには一般的な問題があると思います。主キーは何ですか?値は何ですか?データを1つの列に格納するか、別のテーブルを作成して外部キー制約を作成する必要がありますか?これらは、モデルをデータベーススキーマに変換する前に回答する必要があると思われる質問です。

于 2010-12-15T16:30:09.693 に答える