忽略复杂类型的一个属性

时间:2014-07-13 05:16:20

标签: c# entity-framework ef-code-first entity-framework-6

我想忽略复杂类型的一个属性,以便映射到FinalTotal是计算字段的数据库。实体框架说它不被允许,它必须是一个财产。 :(

public class Sale
{
     public int      Id { get; set; }
     public DateTime DateSale { get; set; }
     public Amounts  Amounts { get; set; }
}

public class Amounts
{
     public decimal Subtotal { get; set; }
     public decimal Tax { get; set; }
     public decimal FinalTotal { get; set; }
}

public class SaleMap : EntityTypeConfiguration<Sale>
{
     public SaleMap()
     {
          Ignore(s => s.Amounts.FinalTotal);
     }
}

2 个答案:

答案 0 :(得分:6)

public class AmountsMap : EntityTypeConfiguration<Amounts>
{
     public AmountsMap()
     {
          Ignore(a => a.FinalTotal);
     }
}

答案 1 :(得分:0)

如果属性没有设置器,则不会将其映射到数据库列。如果它是一个计算字段,则可以让它只包含一个getter。