用户如何查看其他用户的个人资料信息?

时间:2010-03-19 17:10:44

标签: asp.net profile

我已使用此代码存储个人资料信息

        ProfileBase userprofile = HttpContext.Current.Profile;
        userprofile.SetPropertyValue("FirstName", TextBoxFirstName.Text);
        userprofile.SetPropertyValue("LastName", TextBoxLastName.Text);
        userprofile.SetPropertyValue("AboutMe", TextBoxAboutMe.Text);
        userprofile.SetPropertyValue("ContactNo", TextBoxContactNo.Text);

和web.config

<profile enabled="true"  defaultProvider="AspNetSqlProfileProvider">
  <properties>
    <add name="FirstName" type="String"  />
    <add name="LastName" type="String" />
    <add name="AboutMe" type="String" />
    <add name="ContactNo" type="String" />

  </properties>
</profile>

存储个人资料信息,每个用户都可以使用类似的内容查看自己的个人资料信息

TextBoxFirstName.Text = HttpContext.Current.Profile.GetPropertyValue("FirstName").ToString();

如何获取其他用户的个人资料信息,例如用户在文本框中输入其他用户的用户名并点击按钮?

2 个答案:

答案 0 :(得分:3)

以下代码可以获取所有用户个人资料。请定制更多内容,以便实现目标。

1       public object[] GetPropertyValues(string propertyName)
2       {
3           int totRec;
4           List<object> values = new List<object>();
5           ProfileInfoCollection pic = ProfileManager.GetAllProfiles(ProfileAuthenticationOption.Authenticated, 0, 1000, out totRec);
6    
7           foreach (ProfileInfo pi2 in pic)
8               values.Add(ProfileBase.Create(pi2.UserName).GetPropertyValue(propertyName));
9    
10          return values.ToArray();
11      }
12   

您可以在http://forums.asp.net/t/1232593.aspx

中获取更多信息

答案 1 :(得分:1)

我在下面看到的是,它获取指定用户的所有配置文件。

ProfileInfoCollection pic = System.Web.Profile.ProfileManager.FindProfilesByUserName(ProfileAuthenticationOption.All, "username");
        foreach (ProfileInfo pi2 in pic)
        {
            //ProfileBase.Create(pi2.UserName).GetPropertyValue("FirstName").ToString();

            ListBox1.Items.Add(ProfileBase.Create(pi2.UserName).GetPropertyValue("FirstName").ToString());

            //(new ProfileBase) Create(pi2.UserName)).GetPropertyValue("FirstName");
        }

Hojo的回答非常有帮助,谢谢。