0

データベースに日付を挿入する必要がある場合、2 つのことを確認する必要があります。

  1. 31日が選択された場合、今月が31日ある場合
  2. 2 月が選択されている場合、ユーザーが 29 を選択した場合に備えて、うるう年かどうかを確認する必要があります

if's現在、と で満たされた長い関数を使用してこれをチェックしていelse'sます。

C#挿入する前に日付が有効かどうかを確認できる方法はありますか?

4

4 に答える 4

1
DateTime temp;
if (DateTime.TryParse(yourString, out temp))
{
    //valid, use temp to insert into DB.
}
else
{
    //not valid.
}
于 2013-06-15T07:42:44.367 に答える
0

3 つの整数 と がある場合years、まずがmonthsとの間にあることを確認し、次にとの間にあることを確認し、最後に との間にあることを確認します。daysyears19999months112days1DateTime.DaysInMonth(years, months)

追加:データベース ストレージ用の場合、特定の SQL 列の種類によっては、有効な年の範囲がより狭くなる場合があります (例:1753まで) 9999。とにかく、いわゆる「先発的」グレゴリオ暦は歴史的に正確ではなく、一種の「外挿」です。

于 2013-06-15T08:15:35.637 に答える
0

うるう年の検証

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
    {
    }
于 2013-06-15T08:01:18.050 に答える