CreateUserWizard 控件为 MembershipProvider 对象提供用户界面,该对象与您的网站的用户数据存储进行通信以在数据存储中创建新的用户帐户。CreateUserWizard 依赖 MembershipProvider 创建用户并在必要时禁用它们(参见msdn)。
因此,如果您使用 CreateUserWizard,则必须使用 Membership Provider。
如果您不想使用标准的 Membership Provider,您应该考虑创建一个Custom Membership Provider。
但是从您的问题来看,尚不清楚您为什么不想使用标准会员资格。可能值得考虑将标准成员模式包含到您自己的数据库中并使用已在 asp.net 中实现的授权功能为自己节省大量工作(更不用说可能的安全问题等)。在这里,您可以找到如何将 Membership 模式与应用程序数据放在同一个数据库中。
更新:
如果您仍想阻止 CreateUserWizard 的 CreateUser 步骤通过 Membership Provider 创建用户,您可以尝试处理 CreatingUser 事件并将其 LoginCancelEventArgs.Cancel 属性设置为 true。
示例代码:
protected void RegisterUser_CreatingUser(object sender, LoginCancelEventArgs e)
{
e.Cancel = true;
}
然后为了在向导中移动到下一页,您需要处理 NextButtonClick 事件:
- 添加 e.Cancel = False;
- 添加 CreateUserWizard.ActiveStepIndex = (你的下一个向导步骤索引);
之后,您将需要手动创建用户,例如在 FinishButtonClick 事件处理程序中。
希望能帮助到你。