1

我有一个对活动目录进行授权的应用程序,并且运行良好。现在我要做的是获取登录组名的用户。

我这里有这个方法:

[HttpPost]
        public ActionResult Login(LoginClass model, string ReturnUrl)
        {

            if (ModelState.IsValid)
            {
                if (Membership.ValidateUser(model.UserName, model.Password))
                {
                    FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
                    if (Url.IsLocalUrl(ReturnUrl) && ReturnUrl.Length > 1 && ReturnUrl.StartsWith("/")
                        && !ReturnUrl.StartsWith("//") && !ReturnUrl.StartsWith("/\\"))
                    {
                        return Redirect(ReturnUrl);
                    }
                    else
                    {
                        string[] test = Roles.GetRolesForUser();
                        return RedirectToAction("Index", "Home");
                    }
                }
                else
                {
                    ModelState.AddModelError("", "The user name or password provided is incorrect");
                }
            }

            return RedirectToAction("Index", "Home");
        } 

现在这一行:string[] test = Roles.GetRolesForUser();返回空。我放了一个断点,发现这条消息:

The Role Manager feature has not been enabled

我也将此添加到我的 web.config 中:

<roleManager enabled="true" />

在 system.web 内部配置

我做错了什么,我知道这些组存在,但我无法获得它们,或者如何获得用户 OU(组织单位)

4

0 回答 0