2010-08-03 64 views
2

在我的登錄頁面中,我使用FormsAuthentication.RedirectFromLoginPage()在用戶驗證後重定向到主頁。但它似乎不服從CreatePersistenceCookie參數。我在Google中搜索並修改了我的Web.Config,但仍然記住我功能不起作用。Asp.net「記住我」無法通過FormsAuthentication.RedirectFromLoginPage()

這是我的示例代碼結構(使用asp.net登錄控制作爲登錄UI)

if (MyService.ValidateUser(LoginUser.UserName, LoginUser.Password)) 
{ 
    FormsAuthentication.RedirectFromLoginPage(LoginUser.UserName, LoginUser.RememberMeSet); 
} 

的Web.Config

<forms loginUrl="~/Account/Login.aspx" timeout="21600" cookieless="AutoDetect" name="MySiteAuth" slidingExpiration="true"/>

即使LoginUser.RememberMeSet爲True(用戶選擇了記住我複選框)瀏覽器不記得會話。所以當我下次打開網站時,我會看到登錄頁面。理想情況下,登錄頁面應該只在特定於前一會話中退出時纔會出現。否則它應該堅持我的會話。

有沒有人對此有過解釋?

感謝

+0

並且怎麼樣超時?你確定在6小時過去後你沒有重新開啓瀏覽器嗎? – 2010-08-03 06:23:10

+1

當然。爲了測試這個問題,我立即重新打開瀏覽器,它仍然顯示登錄屏幕。和FYI,「超時」在分鐘內進行。所以21600分鐘等於15天。 – ravinsp 2010-08-03 07:13:06

回答