我有一个包含 int 位掩码的 EF4 实体(代码优先)。我创建了一个 Bitmask 结构,以便更轻松地使用位掩码(提供 bool 属性来访问位)。位掩码结构包括重载的隐式运算符,用于与 int 相互转换。
我尝试将属性类型设置为位掩码结构,但值返回为 0。我知道数据库中的值有一个值,并且位掩码在我的单元测试中有效。我将 HasColumnType 设置为“INT”。
该物业...
[Required]
[Display(Name = "Display Pages Bitmask")]
[Column(Name = "fDisplayPagesBitmask")]
public DisplayPagesBitmask DisplayPagesBitmask { get; set; }
从上下文对象...
protected override void OnModelCreating(ModelBuilder builder)
{
builder.Entity<Website>()
.Property(m => m.DisplayPagesBitmask)
.HasColumnType("INT");
}
这可能吗?如果是这样,我需要做什么才能让它工作?