2011-12-14 2 views
3

내가 .NET 3.5 응용 프로그램을 데 및 SQL Server에 대한 최소한의 날짜가 호환되도록하기 위해 2005 년어떻게 .NET 및 SQL Server 2005의

사용자가 날짜를 요청합니다 내 응용 프로그램의 인스턴스 많다.

SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM.

, 내가 오류를 드릴 다운 할 때, 나는 .NET이 01/01/0001에서 SQL 서버 반면 12/31/9999에 날짜를 지원하는지 발견이 나는 사용자가 01/01/1753보다 적은 날짜를 입력 때마다 다음과 같은 오류를 준다 오류를 발견 2005는 01/01/1753에서 12/31/9999까지의 기간을 지원합니다.

이제 최소 날짜에 대한 신청서를 확인해야합니다.

하지만 문제는 많은 인스턴스에서 구현해야하므로 더 나은 솔루션을 찾는 것입니다.

누구든지이 날짜 문제를 해결하기 위해 다른 방법을 사용할 수 있습니까?

+0

public static class Extensions { public static DateTime AsSqlValue(this DateTime date) { if(date < SqlDateTime.MinValue.Value) return SqlDateTime.MinValue.Value; return date; } } 

지금 당신은'01/01/1753'로 분 날짜를 원하는 쉽게 유효한 SQL 날짜 시간을 얻을 도움이 될 수 있습니다 사전에

감사합니다 모든 인스턴스에 대해? – asma

+0

응용 프로그램을 SQL Server 최소 날짜로 제한하십시오. –

+0

예 최소 날짜가 01/01/1753이되도록 응용 프로그램이 충돌하지 않도록 –

답변

5

는 아마도 이것은 당신이 사용

MyDateTime.AsSqlValue(); 
+0

그게 나에게 큰 도움이 될 수 있습니다. 고마워요 @ 마그누스 –