Dapper로 문자열 파싱 오류 발생

.net dapper database micro-orm orm

문제

요약 된 다음 표가 있습니다.

CREATE TABLE [dbo].[TERMINAL] (
    [TERM_CODEID]    SMALLINT     NOT NULL,
    [TERM_ACTIVE]    SMALLINT     NOT NULL,
    [TERM_NAME]      VARCHAR (30) NOT NULL,
    [TERM_SLA]       CHAR (8)     NOT NULL,
    [TERM_SERIAL]    VARCHAR (8)  NULL,
    [TERM_VERSION]   VARCHAR (8)  NULL,

    [TERM_STATUS]    INT          NULL,
)

다음 Dapper 코드를 사용해 보았습니다. 그리고 저는 어퍼의 Dapper 초보자였습니다. 오류가 발생했습니다.

using (var conn = new SqlConnection("data source=ourServer; initial catalog=ourDb;user id=sa;password=ourPassword;"))
{
    conn.Open();
    var terms = conn.Query<Terminal>("select * from TERMINAL");
}

오류 :

파싱 ​​오류 3 열 (TERM_SLA = 01010B01 - 문자열)

나는 문자열을 '파싱'해야하는 이유가 무엇인지 알지 못합니다. 그렇게하는 동안 오류를 경험하지 마십시오. 무엇이 원인이 될 수 있습니다>

수락 된 답변

Dapper.NET 데이터 유형이 데이터베이스와 정확히 일치 할 것으로 기대합니다. Term_SlaString 유형 Term_Sla 합니다.


인기 답변

여기 제 경험이 있습니다. 나는 이것이 도움이되기를 바랍니다, 누군가 :

나는 동일한 오류가 있었고 .net 유형은 SQL 데이터 유형과 일치했다. 단, 일부 데이터는 null입니다. 따라서 SQL 데이터가 nullable이 아닌지 확인하십시오. 그렇지 않으면 적절하게 .net 등록 정보 유형을 변경하십시오.



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow