这是
this question的分支.
>如果我没有一个MembershipProvider指向它,我该如何使用登录控件?
我是否正确理解使用模式?
谈论使用没有MembershipProvider的Login控件是否合理?
>添加MembershipProvider不仅仅是用户名/密码检查?
>使用相同的身份验证逻辑创建我自己的MembershipProvider会更合理吗?
在我的情况下,我不需要MembershipProvider(我认为),因为我的认证情况是微不足道的(一个用户,一个密码).
我有兴趣的部分是“未来证明”我的页面,部分是因为我是新的,并想知道如何工作. (我倾向于通过运行全速度了解每一个角落的事情我可以找到:)
解决方法
您可以将asp:Login控件放在页面中,然后在后面的代码中,捕获Login Control的Authenticate事件.
在Authenticate事件中,检查用户输入的用户名/密码.用户名/密码是登录控件中的属性. (Login.UserName,Login.Password)
如果用户名/密码正确,只需将事件参数Authenticated属性设置为True即可.
不需要会员提供者.
恩.在aspx页面
<asp:Login ID="LoginCtrl" runat="server" DestinationPageUrl="YouAreIn.aspx"></asp:Login>
在代码背后
Private Sub Log_Authenticate(ByVal sender As Object,ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) Handles LoginCtrl.Authenticate If LoginCtrl.UserName = "Hello" AndAlso LoginCtrl.Password = "Hello" Then e.Authenticated = True End If
C#
void MyLogin_Authenticate(object sender,AuthenticateEventArgs e) { if(UserName == "Hello" && Password == "Hello") e.Authenticated = true; }