如何将字段/成员添加到aspnet用户表/对象?

时间:2012-08-28 12:59:04

标签: c# asp.net visual-studio-2010

关注此问题 - aspnet_Membership IP address,我希望添加更多关于我的用户的字段和数据(比如电话号码,年龄和最喜欢的冰淇淋口味......)。为此,我需要使用多个字段,因此,注释字段是不够的。

是否可以向aspnet_Users或aspnet_Membership表添加列,并将注册表单中输入的值绑定到这些列?

1 个答案:

答案 0 :(得分:1)

请改用ASP.NET profile provider。在那里你可以添加你想要的东西(例如用户的图片,自定义的起始页面或他的电话号码)。

以下是可推荐的阅读:http://www.4guysfromrolla.com/articles/101106-1.aspx

以下是来自我的web.config的示例,为每个名为StartPageSqlProfileProvider的用户使用附加属性,并自动将其保存在SQL-Server中:

<profile defaultProvider="AspNetSqlProfileProvider">
  <providers>
    <clear/>
    <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ErpConnectionString" applicationName="/ERP"/>
  </providers>
  <properties>
    <add name="Startpage"/>
  </properties>
</profile>

我在登录后正在阅读此用户设置:

if (User.Identity.IsAuthenticated)
{
    String startPage = HttpContext.Current.Profile.GetPropertyValue("Startpage") as string;
    if (!string.IsNullOrWhiteSpace(startPage))
    {
        Response.Redirect(startPage);
    }
}

您可以按以下方式保存值:

HttpContext.Current.Profile.SetPropertyValue("Startpage", startPage);
HttpContext.Current.Profile.Save();