gpt4 book ai didi

asp.net - 使用标准字段获取用户的个人资料值列表,例如电子邮件

转载 作者:行者123 更新时间:2023-12-01 02:59:05 25 4
gpt4 key购买 nike

我有 ASP.NET 应用程序。我对用户配置文件使用身份验证。我使用 SQL Server 作为数据提供者。我想要做的是用系统中的所有用户填充 GridView 控件,并使用其他配置文件信息。

现在我喜欢这样:

UserAccounts.DataSource = Membership.GetAllUsers();
UserAccounts.DataBind();

有了它,我可以制作一个包含字段的列表:用户名和电子邮件。但现在我想添加我存储为个人资料信息的名字和姓氏字段。

我找到了 this发布并尝试这样做:
ProfileInfoCollection profiles = ProfileManager.GetAllProfiles(ProfileAuthenticationOption.All);
DateTime lastActivity = profiles["some_username"].Email;

但这只给了我标准的用户字段,如电子邮件、LastActivityDate 等。后来我尝试为 GridView 表中的任何行调用该函数。
public string GetProfileValue(string name, string UserName)
{
ProfileBase pb = ProfileBase.Create(UserName, true);
return pb.GetPropertyValue(name).ToString();
}

但我不认为使用配置文件信息为每个字段查询数据库是有效的。我想加入 aspnet_Usersaspnet_Profile表,但 FirstName 和 LastName 字段存储如下:
UserId | PropertyNames                   | PropertyValuesString | ....
----------------------------------------------------------------------
someId | FirstName:S:0:6:LastName:S:6:5: | ThomasSmith | ....

所以这意味着我必须解析字符串才能获得我的值。

我的问题是:
  • 查询 aspnet_ 是否是一个好策略?表直接使用 SELECT ?
  • 如何获取包含 UserName、Email、LastActivityDate、FirstName、LastName(标准和个人资料信息)的 GridView。
  • 最佳答案

    如您所见,默认的 ASP.NET 配置文件提供程序将所有配置文件信息存储在每个用户的单个冒号分隔字段中。

    你最好看看 SQL Table Profile Provider Sample由 MS 发布。这将使您能够创建一个很好的基于表的配置文件,然后您可以将其传递到您的 GridView。

    关于asp.net - 使用标准字段获取用户的个人资料值列表,例如电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1555467/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com