3

良い一日!

データベースの最初のアプローチを使用してデータベースから EF モデルを作成し、データベースにない EF によって生成されたエンティティ クラスにいくつかの読み取り専用プロパティを追加しました。新しいテーブルからデータを追加してモデルを更新するたびに、作成されたプロパティが失われるため、それらを再作成する必要があります。

データベースの例として、プロパティ isFemale がありますが、クラスで作成しました

public string Gender
{
    get
    {
           if(isFemale) return "female";
           else return "male";
     }
}

私の質問は、私が生成したプロパティを残して、データベースからモデルを更新する方法はありますか?

ありがとうございました!

4

3 に答える 3

5

生成されたクラスではなく、別の部分クラスにプロパティを追加します。たとえば、生成されたクラスが Person 型の場合、同じ名前空間で同じプロジェクト内に別の Partial クラスを定義します。

public partial class Person
{
    public string Gender
    {
        get
        {
            if(isFemale) return "female";
            else return "male";
         }
    }
}
于 2013-09-26T07:05:35.540 に答える
4

部分クラスを使用すると問題は解決しますが、

  • 部分クラスのすべての部分は、同じアセンブリで定義する必要があります
  • 部分パーツのプロパティはデータベースに保持されません
  • 部分パーツのプロパティは、linq-to-entities クエリでは使用できません

続きを読む

于 2013-09-26T07:10:20.030 に答える