我已使用此代码存储个人资料信息
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();
如何获取其他用户的个人资料信息,例如用户在文本框中输入其他用户的用户名并点击按钮?
答案 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
中获取更多信息
答案 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的回答非常有帮助,谢谢。