2011-08-05 12 views
5

En el inicio de sesión de vista, inicie sesión con.Error: la vista 'xx' o su maestro no se ha encontrado o no hay motor de vista compatible con las ubicaciones buscadas ... al iniciar sesión?

usuario: admin Contraseña : xxx

que puede conectarse con normalidad.

Al intentar:

usuario: tavaresdemelo.adv.br contraseña: Se muestra xx

El error:

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

controlador de la cuenta

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"); 
} 

Vista de inicio de sesión

@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> 

Respuesta

9

Esta línea

return View(userName); 

dice el marco para cargar una vista denominada nombre de usuario (o en este caso tavaresdemelo.adv.br). Es por eso que está recibiendo el error que no puede encontrar la vista llamada tavaresdemelo.adv.br.aspx, etc. Yo creo lo que estás tratando de hacer sería

return View(); 

o

return View("logon"); 

o cualquiera que sea el nombre de la vista que está tratando de volver a cargar.

Espero que ayude!

1

Para otras instancias de este error, return View("logon") no funciona para mí. He descubierto que return RedirectToAction("View", "Controller") soluciona este problema.

Cuestiones relacionadas