2013-02-08 19 views
0

我正在尋找在MVC3應用程序的下班時間限制用戶登錄的好方法。用戶登錄MVC3中的工作時間限制

我已經在應用程序中定製了授權過濾器,所以想放入模塊進行時間檢查。

我還希望在結束時間後向用戶提供30分鐘(可配置)的寬限期。

代碼片段會非常有幫助。

編輯: 工作時間和寬限期將存儲在SQL服務器的週一至週日,並將分配給每個用戶。

所以還請建議一種方法來輸入這些細節。我有系統管理員頁面,我可以在SQL Server中更新用戶表。使用jQuery滑塊將是我認爲的好方法?

回答

2

我已經在申請這麼想着 把一個模塊中時間的檢查定製授權過濾器後

是啊,這似乎是一個非常好的方法:

public class MyAuthorizeAttribute : AuthorizeAttribute 
{ 
    protected override bool AuthorizeCore(HttpContextBase httpContext) 
    { 
     var now = DateTime.Now; 
     // TODO: you probably want to read those values from a config file 
     // to avoid hardcoding them 
     if (now.Hour > 8 && now.Hour < 20) 
     { 
      return base.AuthorizeCore(httpContext); 
     } 

     // we are outside of standard working hours => deny authorization 
     return false; 
    } 
} 
0

我認爲你可以在你的xml文件中完成這部分。安全目的可以在你的XML配置我猜

+0

你的意思是把工作時間在XML或寬限期或用戶? – Aman 2013-02-08 15:37:04