2013-03-26 41 views
1

的情況是,如果用戶已經登錄第一個用他的一次性密碼應該重定向到ResetPassword.aspx如何找到用戶是否登錄的第一次 - C#

如果用戶不是新的,那麼應該重定向到Main.aspx頁面。

我應該用IsPostBack還是Membership.ValidateUser

我們通常如何在C#中檢查是否有新用戶(使用首次登錄)?

我是一個新手編程沒有得到足夠的信息在網上。請幫助

回答

3

IsPostBack檢查不會幫助你想要什麼。你需要通過數據庫來維護它。

IsPostBack Gets a value that indicates whether the page is being rendered 
for the first time or is being loaded in response to a postback. 

它與頁面後,不與您的數據庫或用戶或您的邏輯:)

爲了幫助你與你的邏輯做的,你需要保持一個單獨的列,以確定是否用戶第一次來了或沒有。

一個簡單的邏輯:

使列在表格中,LastLoginDate讓它空。當用戶註冊時,請將此字段保留爲空。

當用戶登錄時,只需將一查LastLoginDate是否爲空或不是即

if(userObj.LastLoginDate == null) 
    { 
     //user has come for the first time 
     //code to update the LastLoginDate to DateTime.Now 
     Redirect("resetPassword.aspx"); 
    } 
    else 
    { 
     //code to update the LastLoginDate to DateTime.Now 
     Redirect("home.aspx"); 
    } 
+0

謝謝你的快速回復。你能解釋一下IsPostBack用於什麼嗎? – user2138814 2013-03-26 08:35:45

+0

看到我的答案。這是一個非常簡單的檢查 – 2013-03-26 08:38:03

+0

謝謝你一個簡單的答案。 – user2138814 2013-03-26 08:44:53

1

Membership.ValidateUser檢查,如果他/她不獲批准或是否提供錯誤的憑據。

對於這個問題,在創建新用戶時在數據庫中設置一些標誌。

當用戶登錄時,請檢查其標誌。

如果它指示新用戶,則將其重定向到resetpassword頁面。

只需在重定向後更改標誌狀態,以便下次不會將其指示爲新用戶。

相關問題