0

我有一个正在开发的网站,并设置了一个组“管理员”的角色,我希望能够选择一个用户并显示有关该用户的信息......名称、密码、安全问题等。完成这项工作的最简单方法是什么?此外,我已经修改了默认登录步骤以包含一些额外的要求,例如名字和姓氏、公司等。我希望“管理员”组能够快速轻松地查看所有这些信息,所以如果客户另一家公司打电话给我们说他们解雇了那个人,我们可以根据他们的实际姓名而不是用户名删除用户。

编辑 我可以做类似的事情:

MembershipUser user = System.Web.Security.Membership.GetUser(RegisterUser.UserName);
user.Comment = fnametxt.Text.ToString() + " " + lnametxt.Text.ToString() + " " + companytxt.Text.ToString();
System.Web.Security.Membership.UpdateUser(user);

存储附加信息,然后在需要时从 sql 数据库中调用 user.Comment?

4

2 回答 2

1

好的,您还没有说“在哪里”存储您的会员信息,但我假设它在使用由 aspnet_regsql.exe 生成的开箱即用的 Membership & RoleProvider 模式的 SQL 数据库中

除了使用ASP.NET 网站中的内置用户配置工具外,您还可以使用一些第 3 方应用程序与您的会员用户进行交互。

我很久以前使用过 MyWSAT,但它似乎不再维护了。

您应该注意的一件事是,您不能也不应该能够在系统中显示最终用户的“密码”。

于 2012-09-04T12:58:18.327 回答
0

It would appear that what you are looking for is a Profile provider. This can be used to store addition information about users such as first and last names and other miscellanea.

in Web.config

<profile>
      <providers>
        <clear/>
        <add name="AspNetSqlProfileProvider"
             type="System.Web.Profile.SqlProfileProvider"
             connectionStringName="yourConnectionString"<!--Same as membership provider-->
             applicationName="/"/>
      </providers>
      <properties>
        <add name="FirstName" type="string"/>
        <add name="LastName" type="string"/>
        <add name="Company" type="string"/>
      </properties>
    </profile>

Add/edit profile properties:

var username = User.Identity.Name;
ProfileBase profile = ProfileBase.Create(username);
profile["FirstName"] = "John";
profile["LastName"] = "Smith";
profile["Company"] = "WalMart";
profile.Save();

Read profile properties:

var username = User.Identity.Name;
var profile = ProfileBase.Create(username);
var firstName = profile["FirstName"] as string;
var lastName = profile["LastName"] as string;
var company = profile["Company"] as string;

I think this would be the way to go and a bit cleaner and easier to maintain that using comments.

于 2012-09-04T14:06:42.743 回答