2011-01-19 21 views
1

それでは、私はEFコードファーストは、データストアに永続化したいというPOCOを持っているとしましょう:EFコードまず、データストアに永続化されるべきプロパティをカプセル化することは可能ですか?

public class Campaign 
{ 
    public string Name { get; set; } 
    public double GoalAmount { get; set; } 
    private double AmountRaised { get; set; } 
    public bool GoalMet 
    { 
     get 
     { 
      return AmountRaised >= GoalAmount; 
     } 
    } 
} 

さて、何らかの理由で、私はAmountRaisedプロパティが外部にアクセスできるようにしたくありませんオブジェクトですが、私はを実行してをデータストアに保存します。これはEFコードファーストで可能ですか?

答えて

5

internalにして、POCO /ドメインオブジェクトを含むプロジェクトがDbContextクラスと同じアセンブリに含まれていることを確認してください。知っている偉大な - あなたの答えが正しいものであれば

[assembly: InternalsVisibleTo("MyOther.Assembly")]

+0

わからないが、私はInternalsVisibleTo知りませんでした:またはあなたのPOCOSを含むファイルに「友人」のアセンブリを宣言することができます! – CVertex

+0

ありがとうございます。私はInternalキーワードを完全に忘れてしまった。私はすでに自分のモデルを自分のプロジェクトに分けているので、これは完璧です。 –

関連する問題