1

Entity Framework と Mysql を使用しています。そして、各テーブルにエンティティ クラスがあります。

しかし、 DB で定義されていないエンティティ クラスにフィールドを拡張する方法がわかりません。

例) テストテーブルがあり、テーブルには id、price、qty フィールドがあります。

私のエンティティクラスはこのようなものです、

[Table('test')]
public class Test
{
  [Key]
  public int id {get; set;}
  public decimal price {get; set;}
  public int qty {get; set;}
}

ここで、Test クラスに小計フィールドが必要です。(なぜかDBの修正ができません)

だから私は Test クラスを Partial クラスとして作ろうとします、

[Table('test')]
public partial class Test
{
  [Key]
  public int id {get; set;}
  public decimal price {get; set;}
  public int qty {get; set;}
}

public partial class Test 
{
  public decimal? subTotal {get; set;}
}

次に、エラーが発生しました:「フィールドリスト」の「不明な列「Extent1.subTotal」」と表示されます

DB構造を変更せずにsubTotalフィールドをTestクラスに追加するにはどうすればよいですか?

私に助言してください。

4

1 に答える 1

3

モデルに含めるプロパティにはを使用NotMappedAttributeしますが、EntityFrameworkをデータベースにマップしないようにします。

 [Table('test')]
    public class Test
    {
      [Key]
      public int id {get; set;}
      public decimal price {get; set;}
      public int qty {get; set;}
      [NotMapped]
      public decimal? subTotal {get; set;}
    }
于 2013-01-21T20:50:23.660 に答える