2016-05-30 7 views
0

計算フィールドを作成するためにEntity Frameworkをどうすればよいですか?計算された(マッピングされていない)フィールドを作成するためのEntity Framework?

私はまずEntiry Framowork 6を​​データベースで使用しています。たとえば、id、name、initialQuantity、そしてfinalQuantityのエンティティがあるとします。 finalQuantityは、私のinitialQuantityより常に5%多いです。私はmayデータベースにこのフィールドを保持したくない。私はそれをマッピングしたくないが、私は自分のエンティティにそのプロパティを必要とする。

どうすればいいですか?このプロパティをedmxファイルに追加する必要はありますか?継承、部分クラスを作成する必要がありますか?

さらに、私はマッピングされていないエンティティを作成することはできません。さて、代替は何ですか?マッピングされていないフィールドにマップされたエンティティを作成することはできますか?

答えて

0

使用[NotMapped]データアノテーションは:あなたはあなたのエンティティをマッピングしたくない場合は

using System.ComponentModel.DataAnnotations; 
public class MyEntity 
{ 
    public MyEntity() 
    { 
    } 

    [Key] 
    public int Id { get; set; } 
    public decimal initialQuantity { get; set; } 

    [NotMapped] 
    public decimal finalQuantity => initialQuantity*1.05m; 
} 

、あなたのDbContextクラスに入れないでください。

+0

これがデータベースであることを明確にする前に、回答を開始しました。私の例は最初にコードに適用されます。 – MarcinS

関連する問題