我在asp.net web應用程序中有開始時間和結束時間。現在我想驗證一下,如果選擇了開始時間,例如10:00 AM,那麼應該選擇結束時間,並且間隔爲2小時或更短。因此,如果我選擇01:00 PM作爲結束時間,那麼這不應該發生。驗證以確保時間差在2小時內
我如何驗證相同?
我在asp.net web應用程序中有開始時間和結束時間。現在我想驗證一下,如果選擇了開始時間,例如10:00 AM,那麼應該選擇結束時間,並且間隔爲2小時或更短。因此,如果我選擇01:00 PM作爲結束時間,那麼這不應該發生。驗證以確保時間差在2小時內
我如何驗證相同?
如果你在DateTime類中使用加或減,它會返回一個TimeSpan,它可以在條件中進行比較。
當創建一個新的時間跨度類,你可以設定小時小步舞和秒以這種形式:
new TimeSpan(hours, minutes, seconds);
你的情況,您要使用:
new TimeSpan(2, 0, 0);
嘗試是這樣的:
//Assuming you created your variables and assigned them somewhere above
DateTime startTime, endTime;
if(endTime - startTime > new TimeSpan(2, 0, 0)) {
//validation error
}
如何使用customvalidator來執行2小時規則? – 2011-04-06 12:28:25
只需雙擊並寫出C#事件:解碼字符串形式2文本框,減去,檢查diff.TotalMinutes <120。 – 2011-04-06 13:13:27
如前所述,您可以使用自定義的驗證實現。這將檢查選擇'開始'的當前時間不超過2小時以前(或完全取決於您的條件)。
另一個需要考慮的問題是「範圍驗證」,它應該能夠滿足您的要求。在這裏看一下MSDN的例子:http://msdn.microsoft.com/en-us/library/aa479013.aspx#aspnet-validateaspnetservercontrols_topic5
您是否調查了自定義驗證器? – 2011-04-06 09:57:55
是的,但我不確定在驗證計時時如何工作 – 2011-04-06 10:02:00