【发布时间】:2015-05-11 06:51:25
【问题描述】:
我使用 Entity Framework 6 (EF6),并且我想将一个具有 int 类型的列的表映射到我的实体上的 bool 类型的属性,该列只有值 0 或 1。
我想这样做而不需要为同一列拥有两个属性,方法是拥有一个未使用在其 get'er 和 set'er 中映射的属性来映射的属性。
public class MyEntity
{
...
[NotMapped]
public bool MyColumnAsBool
{
get { return MyColumnAsInt == 1; }
set { MyColumnAsInt = value ? 1 : 0; }
}
public int MyColumnAsInt { get; set; }
...
}
但我似乎无法弄清楚这是否可以像在 NHibernate 中那样单独使用属性来完成?如果不是,为什么?为什么没有实施?
当两个属性都需要公开时,为同一事物拥有两个属性很麻烦。
【问题讨论】:
-
将
MyColumnAsInt设为私有并使用stackoverflow.com/a/21686896的解决方案对其进行映射
标签: entity-framework entity-framework-6