2014-10-23 7 views
4

데이터베이스가 SQL Server 2005에 있고 해당 열의 데이터 형식이 tinyint으로 정의되어 있습니다 (이 형식을 변경할 수 없음)속성을 바이트 값으로 설정할 수 없습니다. int32 형식이 아닌 null로 속성을 설정해야합니다

형식이 Int32 인 모델을 만들었습니다. 읽기 문 시스템에서이 오류가 발생합니다.

재산권은 그때 수정 CLR 매핑을 확인 후

나는, 다른 유형의 유사한 문제에 직면했다 INT32 유형의 비 null로 속성을 설정해야 바이트 값으로 설정할 수 없습니다 그들. 이제 tinyintsmallint의 경우에만이 문제에 직면하고 있습니다.

+0

감사합니다. 문제가 해결되었습니다. –

답변

12

SQL Server docs에서 TINYINT은 .Net에 byte 유형으로 매핑되는 1 바이트 값임을 알 수 있습니다. SMALLINT은 .Net에서 Int16이되는 2 바이트입니다.

올바른 유형을 사용하려면 모델을 변경해야합니다.

1

단순히 복잡한 엔터티에서 속성 데이터 형식을 변경하십시오. 경우에 따라 int32에서 byte로 속성을 변경하십시오.

적어도 나를 위해 일했습니다.