2011-08-05 6 views
5

W widoku logowania, zaloguj się za pomocą.Błąd: Nie znaleziono widoku "xx" lub jego wzorca lub żaden mechanizm wyświetlania nie obsługuje szukanych lokalizacji ... przy logowaniu?

użytkownika admin Hasło: xxx

mogę zalogować się normalnie.

Podczas próby:

Użytkownika: tavaresdemelo.adv.br Hasło: Wyświetlane jest xx

Błąd:

The view 'tavaresdemelo.adv.br' or ITS master was not found or the view engine supports the searched locations. The Following Were searched locations: ~/Views/account/tavaresdemelo.adv.br.aspx ~ /Views/account/tavaresdemelo.adv.br.ascx ~/Views/Shared/ tavaresdemelo.adv.br.aspx ~/Views/Shared/ tavaresdemelo.adv.br.ascx ~/Views/account/ tavaresdemelo.adv.br.cshtml ~/Views/account/ tavaresdemelo.adv.br.vbhtml ~/Views/Shared/ tavaresdemelo.adv.br.cshtml ~/Views/Shared/ tavaresdemelo.adv.br.vbhtml

Konto Controller

public ActionResult LogOn() 
{ 
    return View(); 
} 

[HttpPost] 
public ActionResult LogOn(string userName, string password, string returnUrl) 
{ 
    if (ModelState.IsValid) 
    { 
     if (Membership.ValidateUser(userName, password)) 
     { 
      FormsAuthentication.SetAuthCookie(userName, false); 
      if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/") 
       && !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\")) 
       return Redirect(returnUrl); 
      return RedirectToAction("Index", "Home"); 
     } 
     ModelState.AddModelError("", "Usuário ou senha estão inválidos"); 
    } 

    // If we got this far, something failed, redisplay form 
    return View(userName); 
} 

public ActionResult LogOff() 
{ 
    FormsAuthentication.SignOut(); 
    return RedirectToAction("Index", "Home"); 
} 

View Logon

@model string 
@{ 
    ViewBag.Title = "Login"; 
} 

<div id="login"> 
    <h2>@ViewBag.Title</h2> 
    @Html.ValidationSummary(true, "Erro ao tentar efetuar o login.") 
    @using (Html.BeginForm()) 
    { 
     <fieldset class="login"> 
      <legend>Entre com seu usuário e senha</legend> 
      <div class="inline"> 
       @Html.Label("userName", "Usuário: ") 
       @Html.TextBox("userName", Html.Encode(Model)) 
       @Html.ValidationMessage("userName") 
      </div> 

      <div class="inline"> 
       @Html.Label("password", "Senha: ") 
       @Html.Password("password") 
       @Html.ValidationMessage("password") 
      </div> 

      <div class="form-buttons"> 
       <input type="submit" class="button" value="Login" title="Login" /> 
      </div> 
     </fieldset> 
    } 
</div> 

Odpowiedz

9

Linia ta

return View(userName); 

opowiada ramy załadować widok nazwie nazwę użytkownika (lub w tym przypadku tavaresdemelo.adv.br). Dlatego otrzymujesz błąd, że nie może znaleźć pogląd zwany tavaresdemelo.adv.br.aspx itp myślę co próbujesz zrobić byłoby

return View(); 

lub

return View("logon"); 

lub dowolna nazwa widoku, którą próbujesz przeładować.

Mam nadzieję, że to pomoże!

1

Dla innych przypadków tego błędu, return View("logon") nie działa dla mnie. Dowiedziałem się, że return RedirectToAction("View", "Controller") rozwiązuje ten problem.

Powiązane problemy