实体 - 地图类型

时间:2014-04-09 15:36:32

标签: c# entity-framework poco entity-framework-6

我有一个这样的实体:

public class MyEntity
{
  public DateTime Time{get;set;}
}

现在,我们的db指南之一告诉我们应该将日期存储为int以节省一些空间。

我目前正在修理它:

public class MyEntity
{
    [NotMapped]
    public DateTime Time { get; set; }

    [Column("Time")]
    public int TimeAsInt
    {
        get { return Time.AsInt(); }//Extension methods on int/datetime
        set { Time = value.AsDateTime(); }
    }
}

有没有办法做到这一点,而不必弄乱我的POCO对象?我希望我不必更改我的模型以使用Entity,只需添加一些额外的实体映射。

1 个答案:

答案 0 :(得分:0)

我认为你会被迫加入那个领域,但我建议你把你的Poco改成这样的东西,所以你只需要在需要的时候进行演员。

public class MyEntity
{
   [NotMapped]
   public DateTime Time { 
     get{
      return Time.AsInt()  
     }

     set{
      TimeAsInt = value.AsInt();
     }

    [Column("Time")]
    public int TimeAsInt{get;set;}
}