Entity Framework - Invalid Casting Exception

FGPRJS·2022년 12월 12일
0

Entity Framework에서 EnsureCreatedAsync(); 중에 정체를 알 수 없는 InvalidCastingException이 발생하여 이에 관하여 기재한다.


오류

DbContext로 Table을 생성하는 중에, Int64를 Int32로 변환할 수 없다는 엉뚱한 오류가 발생하였다.

(Unable to cast object of type 'System.Int64' to type 'System.Int32'.)

원인

기본적인 원인은 DBeaver에서 생성한 Table의 Charset이 MySQL-Server와 맞지 않아서 발생한 오류이다.

해결

DBeaver에서 생성한 Table을 삭제하고, 다시 EnsureCreatedAsync 수행 시 정상적으로 구동되었다.

추가

기본 설정이 latin1으로 되어있는데, 이는 추후 한글을 포함한 특수 문자들을 출력하는데에 문제가 될 수 있다. 다음 사이트등을 참조하여, MySQL-Server 자체의 Default Charset을 조절하면 이러한 불상사를 사전에 방지할 수 있다.

profile
FGPRJS

0개의 댓글