为什么必须指定会员提供者
我试图在不使用 Membership Provider 的情况下创建自己的登录功能,但在使用 System.Web.UI.WebControls.Login 控件登录并使用 FormsAuthentication.SetAuthCookie 设置身份验证 cookie 后(username, RememberMe);
我收到以下错误消息
必须指定默认成员资格提供商。
我想知道为什么必须指定它?
I'm trying to make my own login functionality without using Membership Provider, but after I login using the System.Web.UI.WebControls.Login
control and set the authentication cookie using FormsAuthentication.SetAuthCookie(username, rememberMe);
I got the following error message
Default Membership Provider must be specified.
I wonder why it must be specified ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
System.Web.UI.WebControls.Login
与成员资格提供程序紧密耦合。如果您想在没有会员提供商的情况下登录,您应该使用文本框和按钮制作自己的登录表单。The
System.Web.UI.WebControls.Login
is tightly coupled to the Membership Providers. If you want to log in without a Membership Provider, you should just make your own login form with textboxes and buttons.我知道这已经很旧了,但我只是偶然发现了这个问题,因为我已经这样做了,所以想分享我的解决方案,以防其他人有需要。
问题是您需要处理
asp:Login
控件的OnAuthenticate
事件。在最简单的形式中,您可以在 aspx 中使用此内容:在后面的代码中使用此内容:
在 web.config 中使用此内容:
这将为您提供一个简单的登录表单,并在 web.config 中使用硬编码的用户。适用于原型和演示,请不要将用户帐户放入实际站点的 web.configs 中!
I know this is old, but I just stumbled across the question and since I've done this wanted to share my solution in case anyone else should have need.
The catch is you need to handle the
OnAuthenticate
event of theasp:Login
control. In the simplest form you would have this in the aspx:And this in the code behind:
And this in web.config:
This will get you a simple login form with a hardcoded user in web.config. Good for prototypes and demos, please don't put user accounts in web.configs for live sites!
您必须在 web.config 中添加一个部分,告诉它在哪里查找您的会员名册。这将是一个包含用户的数据库、一个活动目录组等。否则,您的应用程序如何知道在哪里对您的用户进行身份验证?
有关详细信息,请参阅 MSDN 的会员简介。
You have to add a section to your web.config telling it where to look for your membership roster. this will be either a database containing users, an active directory group, etc. otherwise, how does your app know where to authenticate your users?
Check out MSDN's Introduction to Membership for more information.
我可以使用它而无需制作自己的登录表单。我刚刚从 webconfig 中删除了会员资格提供程序部分。
I could use it without making my own login form. I've just removed the membership provider section from the webconfig.