"데이터 형식을 sql_variant에서 datetime으로 암시 적으로 변환 할 수 없습니다"오류가 발생했습니다.

c# dapper

문제

메소드가있는 저장소 클래스가 있습니다.

using Dapper;
public int Execute(string query, object arguments)
    {
        return Connection.Execute(query,arguments);
    }

다른 프로그램에서 insert 쿼리를 실행하려고합니다.

dbOps.Execute(qry, new
                            {
                                transType = unp.TransType,
                                itemCode = unp.ItemCode,
                                itemQty = unp.ItemQty,
                                itemUM = unp.UnitMeasure,
                                itemSite = unp.ItemSite,
                                itemLoc1 = unp.ItemLocation1,
                                itemLoc2 = unp.ItemLocation2,
                                transRmk = unp.TransRmks,
                                transEffDate = unp.TransEffDate, //is DateTime
                                transDate = unp.TransDate, //is DateTime
                                cimStatus = unp.CimStatus,
                                cimBatchNo = unp.CimBatchNo,
                                transID = unp.TransID,
                                cimLoadDate = unp.CimLoadDate
                            });

unp 클래스 :

internal class unp
    {
        public string TransType { get; set; }
        public string ItemCode { get; set; }
        public decimal ItemQty { get; set; }
        public string UnitMeasure { get; set; }
        public string ItemSite { get; set; }
        public string ItemLocation1 { get; set; }
        public string ItemLocation2 { get; set; }
        public string TransRmks { get; set; }
        public DateTime TransEffDate { get; set; }
        public DateTime TransDate { get; set; }
        public byte CimStatus { get; set; }
        public string CimBatchNo { get; set; }
        public string TransID { get; set; }
        public object CimLoadDate { get; set; }

        public string SourceFile { get; set; }
        public string JournalId { get; set; }
    }

검색어 문자열 :

string qry = @"INSERT INTO [Transaction]
                                 VALUES(@transType,@itemCode,@itemQty,@itemUM,@itemSite,@itemLoc1,@itemLoc2,@transRmk,
                                 @transEffDate,@transDate,@cimStatus,@cimBatchNo,@transID,@cimLoadDate)"

임 예외를 얻는 :

데이터 형식 sql_variant에서 datetime으로의 암시 적 변환은 허용되지 않습니다. CONVERT 함수를 사용하여이 쿼리를 실행합니다.

어떤 생각이라도 해결할 수 있습니까? 또는 여러 프로젝트에 Dapper 를 부과해야합니까?

수락 된 답변

이 시도 .

CimLoadDate 형식을 개체 형식에서 DateTime으로 변경합니다. 데이터베이스에서 dateTime이기 때문에

public Datetime CimLoadDate { get; set; }


아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.