Visual Studio 2012에서 C# 프로그램을 개발할 때 Entity Framework를 사용하고 있습니다. 데이터베이스 테이블에 레코드를 추가하고 싶습니다. 레코드 (객체)에는 NULL 값을 허용하지 않는 속성 (TRANSACTION_DATE)이 있으며 DateTime 형식입니다. 데이터베이스에서 내가이 형식을 목표로하고 있습니다 :datetime2 데이터 형식을 datetime 데이터 형식으로 변환하면 범위를 벗어나는 값이되었습니다.
newEntry.TRASACTION_DATE = DateTime.ParseExact(DateTime.Now.ToString(),
"yyyy-MM-dd HH:mm:ss.fff", CultureInfo.InvariantCulture);
그러나 그것은 나에게 오류를주고 :
yyyy-MM-dd HH:mm:ss.fff
그래서 내가 그것을 현재 날짜와 시간을 전달하려면, 내 코드는 다음과 같다
The conversion of a datetime2 data type to a datetime data type resulted in an out-of-range value.
내가 원하는 형식으로 변환되지 않는 이유를 알고 싶습니다.
제약 :
왜 'DateTime.Now'를 문자열로 변환 한 다음 다시 돌아가고 있습니까? 그냥'DateTime.Now'를 사용하십시오 ... 그리고 데이터베이스 값은 형식을 갖지 않습니다. 본질적으로 - 문자열로 변환 할 때 사용되는 형식은 저장된 내용과 무관합니다. –
이 내가 원하는 형식이 아니기 때문에 – lcc
이 'datetime 범위를 벗어난'예외는 거의 항상 데이터베이스에 '01 -01-0001 00:00:00 '을 저장하려는 시도에 빠졌습니다. 데이터베이스가 – paul