int 비트 마스크가 포함 된 EF4 엔티티 (코드 우선)가 있습니다. bitmask 구조체를 만들어 비트 마스크로 작업하기가 더 쉬워졌습니다 (비트에 액세스 할 수있는 bool 속성 제공). 비트 마스크 구조체에는 int로 변환하거나 int에서 변환하기위한 오버로드 된 암시 적 연산자가 포함됩니다.EF4 속성 유형에 대한 기본 구조체 대신 구조체 사용
비트 마스크 구조체에 속성 유형을 설정했지만 값이 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");
}
이 가능합니까? 그렇다면 그것을 작동시키기 위해 무엇을해야합니까?
어떻게 수행 할 수 있는지에 대한 예제 코드를 추가 할 수 있습니까? – jonas
이 주제에 대한 뉴스가 있으십니까? 일반 int를 캡슐화하는 struct-type 속성이 있습니다. 2013 년 이후로 변경된 사항이 있습니까? – Shimmy