2012-04-29 23 views
0

StartTextbox,EndTextBoxおよびTextbox3No of Monthを含む)のテキストボックスがあります。今度は、開始日と終了日の差をNo of Monthと比較して確認します。ここで差異日付計算

は、カスタム検証関数です:

protected void ValidateDuration(object sender, ServerValidateEventArgs e) 
{ 
    DateTime start = DateTime.Parse(StartTextBox.Text); 
    DateTime end = DateTime.Parse(EndTextBox.Text); 

    int months = (end.Month - start.Month) + 12 * (end.Year - start.Year); 

    e.IsValid = months <= TextBox3; 
} 

答えて

0

あなたがTextBox3の値でmonthsint)をチェックしたい場合は、まずstringとして値を取得し、それを変換する必要がありますint。例えば: - あなたがオーバーライドされた操作を使用して、2つの日付の間の月数を取得することができます

protected void ValidateDuration(object sender, ServerValidateEventArgs e) 
{ 
    DateTime start = DateTime.Parse(StartTextBox.Text); 
    DateTime end = DateTime.Parse(EndTextBox.Text); 

    int months = (end.Month - start.Month) + 12 * (end.Year - start.Year); 
    int noOfMonth = int.Parse(TextBox3.Text); 

    e.IsValid = months <= noOfMonth; 
} 
0

2つの日付の間の時間間隔を取得する:

DateTime date1 = new DateTime(); 
    DateTime date2 = new DateTime(); 

    date1 = DateTime.Now; 
    date2 = DateTime.Now.AddMonths(4); 

    TimeSpan months = date2 - date1; 

    Console.WriteLine(months.Days/30); 

このコードスニペットが表示されます4ヶ月

e.IsValid = months <= Int32.TryParse(TextBox3.Text);