ASP.Net - 根据电子邮件白名单注册用户

时间:2012-02-28 05:23:54

标签: asp.net validation email membership whitelist

我正在寻找解决方案,但无法在网上找到。我以前用其他语言做过这个,但我不知道如何在ASP.Net中解决这个问题。我正在使用Visual Studio 2010 Express。

我目前正在考虑将Whitelist命令放在RegisterUser控件中的CreatingUser事件中。为此,我获取用户提供的电子邮件地址,检查以确保该域位于列入白名单的电子邮件地址的单独表中。如果用户在白名单中,则继续注册,否则失败。

基本上,用户必须属于列入白名单的电子邮件地址才能加入网站。

任何人都可以指导我如何使用ASP.Net专门做这件事吗?我正在构建从ASP.Net创建的基本项目模板,所以这是我正在使用的所有库存Microsoft代码。代码很棒,但我想真正了解我在做什么!

修改 我在ASPNETDB.mdf

中创建了下表

whitelistTable:

whitelistID,bigint autoincrement

whitelistDomain,nvarchar(256)

1 个答案:

答案 0 :(得分:1)

如果您指的是CreateUserWizard.CreatingUser事件,CreateUserWizard控件支持“电子邮件”字段,如果您在成员资格提供程序中以此方式进行设置,则应自动添加该字段。 (免责声明:我自己实际上没有使用过这个)。

<asp:CreateUserWizard ID="RegisterUser" runat="server" OnCreatingUser="RegisterUser_CreatingUser" ... > 
...
</asp:CreateUserWizard>

在RegisterUser_CreatingUser处理程序中:

protected void RegisterUser_CreatingUser(object sender, LoginCancelEventArgs e) 
{ 
    if (!EmailIsInWhiteList(RegisterUser.Email))
    { 
        // Optional: display validation message. 
        e.Cancel = true; 
        return; 
    } 

    e.Cancel = false; 
}