2011-05-07 50 views
1
Public Sub mainlogin_Authenticate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) Handles mainlogin.Authenticate 
    'Are the credentials valid? 
    If Membership.ValidateUser(mainlogin.UserName, mainlogin.Password) Then 
     'Has the password expired? 
     Dim usrInfo As MembershipUser = Membership.GetUser(mainlogin.UserName) 

     Dim daysSincePwdChange As Integer = Convert.ToInt32(DateTime.Now.Subtract(usrInfo.LastPasswordChangedDate).TotalDays) 
     If daysSincePwdChange > SecurityUtils.DefaultPasswordExpiryInDays Then 
      'Password expired, send user to change password 
      Response.Redirect("~/ChangePassword.aspx?UserName=" & Server.UrlEncode(mainlogin.UserName)) 
     Else 
      e.Authenticated = True 'Credentials valid & password is current 
     End If 
    Else 
     e.Authenticated = False 'Invalid! 
    End If 
end sub 

,但我得到這個錯誤如何改變公衆

錯誤6「System.Web.SecurityUtils」是不是在這種情況下訪問,因爲它是「朋友」。

+0

請記住在標題和標籤中指定編程語言。 – 2011-05-07 07:45:50

回答

0

您不能 - 因爲它說,System.Web.SecurityUtils是無法訪問。你不能公開它 - 這不是設計是公開的。改變你的方法,讓你不需要它。

當然,這可能是你真的想要提及一種不同的類型......你是否讀過this page?我的猜測是,在這裏,SecurityUtils是一個不同的自定義類,而不是System.Web.SecurityUtils

它所做的只是獲取網站的默認期滿 - 而這可能是您想要以自己的方式實現的東西。它可能只是一個常量,或者可能來自設置文件。這不是那裏會有很多邏輯。