sqldatetime.minvalue를 datetime으로 변환하는 방법은 무엇입니까?
sqldatatime.minvalue를 datetime 개체로 변환 할 수없는 것 같습니다.
나는 시도했다 :
Datetime dt = Convert.ToDateTime(SqlDateTime.MinValue);
그것은 분명히 작동하지 않았습니다.
명시 적 변환 연산자를 사용하지 않는 이유는 무엇입니까?
DateTime dt = (DateTime) SqlDateTime.MinValue;
그것은 나를 위해 작동합니다.
using System;
using System.Data.SqlTypes;
class Test
{
static void Main()
{
DateTime dt = (DateTime) SqlDateTime.MinValue;
Console.WriteLine(dt);
}
}
변환 할 필요가 없습니다. 을 반환 SqlDateTime
하는 Value 속성이 DateTime
있습니다.
DateTime dt = SqlDateTime.MinValue.Value;
귀하가받은 답변은 가치를 변환하는 두 가지 방법을 보여주었습니다. 하나는 정의 명시 적 변환을 사용하는 것 SqlDateTime
까지를 DateTime
다른 하나는 액세스하는 것입니다, .Value
온 재산을 SqlDateTime
반환 인스턴스 DateTime
.
var date = theSqlDate.Value; // via property
var date = (DateTime)theSqlDate; // via explicit conversion
고려할 가치가있는 장단점이 있습니다. SqlDateTime
value를 통해 데이터베이스의 null 값 개념 (DBNull, 현재 삭제 된 다른 답변에서 참조)을 지원합니다 SqlDateTime.Null
. Value
"null"인스턴스 의 속성에 액세스하면 SqlNullValueException
. 반면에 DateTime으로 명시 적으로 변환하면 {January 1, 1900 12:00:00 AM}
. 이러한 결과 중 어느 것도 코드에서 원하지 않을 수 있습니다. 데이터베이스에서 유효한 null 항목을 null이 아닌 기본값으로 덮어 쓰는 것은 런타임에 예외를받는 것만 큼 나쁠 수 있습니다.
데이터베이스에 nullable 열이 있고을 사용하는 경우 SqlDateTime
명시 적으로 테스트하고 SqlDateTime.Null
다르게 처리해야 할 수 있으며 다른 값을 변환하기 위해 어떤 접근 방식을 취하는지는 중요하지 않을 수 있습니다.
DateTime? date;
if (theSqlDate.Equals(SqlDateTime.Null))
date = null
else
date = theSqlDate.Value; // or (DateTime)theSqlDate;
참조 URL : https://stackoverflow.com/questions/7688285/how-to-convert-sqldatetime-minvalue-to-datetime
'IT TIP' 카테고리의 다른 글
Python에서 초를 hh : mm : ss로 변환 (0) | 2020.12.31 |
---|---|
내부 예외를 확인하는 가장 좋은 방법은 무엇입니까? (0) | 2020.12.31 |
프로그래밍 방식으로 특정 연락처에 텍스트 보내기 (whatsapp) (0) | 2020.12.31 |
Visual Studio 2013. 컴퓨터의 IIS 웹 사이트에 액세스 할 수있는 권한이 없습니다. (0) | 2020.12.31 |
YAML 대신 JSON을 사용하여 ActiveRecord 직렬화 (0) | 2020.12.31 |