データベースに日付を挿入する必要がある場合、2 つのことを確認する必要があります。
- 31日が選択された場合、今月が31日ある場合
- 2 月が選択されている場合、ユーザーが 29 を選択した場合に備えて、うるう年かどうかを確認する必要があります
if's
現在、と で満たされた長い関数を使用してこれをチェックしていelse's
ます。
C#
挿入する前に日付が有効かどうかを確認できる方法はありますか?
データベースに日付を挿入する必要がある場合、2 つのことを確認する必要があります。
if's
現在、と で満たされた長い関数を使用してこれをチェックしていelse's
ます。
C#
挿入する前に日付が有効かどうかを確認できる方法はありますか?
DateTime temp;
if (DateTime.TryParse(yourString, out temp))
{
//valid, use temp to insert into DB.
}
else
{
//not valid.
}
3 つの整数 と がある場合years
、まずがmonths
との間にあることを確認し、次にとの間にあることを確認し、最後に との間にあることを確認します。days
years
1
9999
months
1
12
days
1
DateTime.DaysInMonth(years, months)
追加:データベース ストレージ用の場合、特定の SQL 列の種類によっては、有効な年の範囲がより狭くなる場合があります (例:1753
まで) 9999
。とにかく、いわゆる「先発的」グレゴリオ暦は歴史的に正確ではなく、一種の「外挿」です。
うるう年の検証
static void Main(string[] args)
{
try
{
Console.Write("Please Enter the Year: ");
int year = int.Parse(Console.ReadLine());
if ((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0))
{
Console.WriteLine("The year {0}, is a Leap Year", year);
}
else
{
Console.WriteLine("The year {0}, is not a Leap Year", year);
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadLine();
}
または単に使用できます
if (DateTime.IsLeapYear(year))
{
//your logic
}
else
{
}