2012-01-30 98 views
0

對MVC 3 IM一種新的,我只是發現這個實例項目中的MVC 2窗體身份驗證Cookie MVC 3和MVC 2

FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(1,Username,DateTime.Now,DateTime.Now.AddMinutes(10), RememberMe, Username); 
string encTicket = FormsAuthentication.Encrypt(authTicket); 
this.Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encTicket)); 

,這對MVC 3示例項目

FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe); 

我的問題是這是否具有相同的效果?我如何指定在mvc 3上的cookie的實況?

THX提前

回答

2

我的問題是,這是否有同樣的效果?

沒有,兩個代碼片段是不等價的,因爲在第一手動設置門票的超時有效期爲10分鐘,而在第二個它使用在你的web.config超時屬性:

<authentication mode="Forms"> 
    <forms loginUrl="~/Account/LogOn" timeout="2880" /> 
</authentication> 

如果將web.config中的超時設置爲10分鐘,它會產生相同的效果。

+0

thx很多@Daring – 2012-01-30 17:00:42