从GetUsersInRole获取用户的全名

时间:2014-03-06 04:56:54

标签: asp.net active-directory roles roleprovider asp.net-roles

我正在使用SQL角色提供程序并获取“管理员”角色中的用户列表,我使用以下代码:

string[] list = Roles.GetUsersInRole("Admin");

这给了我一个AD用户名列表。

如何获取用户的全名(即名字+姓氏)。

任何建议表示赞赏!

1 个答案:

答案 0 :(得分:0)

尝试这样的事情。

List<MembershipUser> users = Roles.GetUsersInRole("Admin").Select(Membership.GetUser).ToList();
        var profiles = ProfileManager.GetAllProfiles(ProfileAuthenticationOption.All);
        foreach (var member in users)
        {
            var profile = profiles[member.UserName];
            ProfileCommon profileCommon = Profile.GetProfile(profile.UserName);

            if (profileCommon != null)
            {
                string UserId = (Guid) member.ProviderUserKey;
                string FirstName = profileCommon.FirstName;
                string LastName = profileCommon.LastName;

            }
        }