Как создать собственное приложение для входа в ASP.NET MVC - PullRequest
0 голосов
/ 22 ноября 2011

Я следовал этому учебнику , чтобы создать пример приложения для входа в систему с использованием ASP.NET MVC

Я создал базу данных и добавил ее в обозреватель серверов, как указано в руководстве. Я также изменил файл AccountController.cs и добавил следующий код вместо метода входа по умолчанию.

public ActionResult Login(string username, string password, bool? rememberMe)
    {
        ViewData["Title"] = "Login";
        if (Request.HttpMethod != "POST")
        {
            return View();
        }
        // Basic parameter validation
        List<string> errors = new List<string>();
        if (String.IsNullOrEmpty(username))
        {
            errors.Add("You must specify a username.");
        }

        if (errors.Count == 0)
        {

            LinkMVC.Models.LinkManagerDataContext lm = new LinkMVC.Models.LinkManagerDataContext();
            Nullable<int> userid = null;
            lm.fm_AuthenticateUser(username, password, ref userid);

            if (userid > 0)
            {

                FormsAuth.SetAuthCookie(username, rememberMe ?? false);
                return RedirectToAction("Index", "Home");
            }
            else
            {
                errors.Add("The username or password provided is incorrect.");
            }
        }


        // If we got this far, something failed, redisplay form
        ViewData["errors"] = errors;
        ViewData["username"] = username;
        return View();
    }

Я не могу устранить две ошибки:

LinkMVC.Models.LinkManagerDataContext lm = new LinkMVC.Models.LinkManagerDataContext ();

В нем говорится, что тип пространства имен "Модели" не существует в пространстве имен LinkMVC

FormsAuth.SetAuthCookie (имя пользователя, RememberMe ?? false);

Здесь говорится, что нет метода расширения для setAuthCookie

Может кто-нибудь сказать мне, что мне здесь не хватает?

Спасибо

1 Ответ

1 голос
/ 22 ноября 2011

Я думаю, что класс должен быть FormsAuthentication, а не FormsAuth.

Образец с 2008 года и использует предварительный просмотр ASP.NET MVC 4, поэтому, возможно, имя класса изменилось.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...