未找到视图 'Index' 或其主视图,这是因为用户凭据无效吗

The view 'Index' or its master was not found , is this because invalid user credentials

我发现了很多与我的问题相同的问题,但没有一个解决了我的问题

我将简要解释一下,我已经创建了 MVC 5 网络应用程序。在那个应用程序中 一旦我调试了我的应用程序,它就会指向 ~/Account/Login 页面

然后一旦我输入有效的用户名密码,它就可以定向到 ~/Home/Index 页面

此应用程序以前运行良好,但后来我将其更改为本地数据库

这是之前为服务器数据库定义的连接字符串的方式

      <connectionStrings>
        <add name="dbconnection" connectionString="Data Source=192.158.1.205;Initial Catalog=DBName;Persist Security Info=True;User ID=**;Password=****" providerName="System.Data.SqlClient" />
        <add name="DefaultConnection" connectionString="Data Source=192.158.1.205;Initial Catalog=DBName;Persist Security Info=true;User ID=**;Password=****" providerName="System.Data.SqlClient" />
        <add name="ProjectEntities" connectionString="metadata=res://*/Models.albaraka_model.csdl|res://*/Models.albaraka_model.ssdl|res://*/Models.DBName_model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=192.158.1.205;initial catalog=***;persist security info=True;user id=***;password=*****;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

这就是现在为本地数据库配置连接字符串的方式

<connectionStrings>
    <add name="dbconnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=DBName;Integrated Security=True;MultipleActiveResultSets=True;" providerName="System.Data.SqlClient" />
    <add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=DBName;Integrated Security=True;MultipleActiveResultSets=True;" providerName="System.Data.SqlClient" />
    <add name="ProjectEntities" connectionString="metadata=res://*/Models.DBName_model.csdl|res://*/Models.DBName_model.ssdl|res://*/Models.DBName_model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=ALBARAKA;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>

这是因为定义的连接字符串无效吗?或者这是因为无效的用户名密码(目前未在客户端或服务器端处理)

这是我的post登录方法

        [HttpPost]
        [AllowAnonymous]
        [ValidateAntiForgeryToken]
        public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
        {

            if (!ModelState.IsValid)
            {
                return View(model);
            }


            var result = await SignInManager.PasswordSignInAsync(model.UserName, model.Password, model.RememberMe, shouldLockout: false);

            switch (result)
            {
                case SignInStatus.Success:
                    return RedirectToLocal(returnUrl);

                case SignInStatus.LockedOut:
                    return View("Lockout");

                case SignInStatus.RequiresVerification:
                    return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe });

                case SignInStatus.Failure:

                default:
                    ModelState.AddModelError("", "Invalid login attempt.");

                    return View("Index", "Home", model);
            }
        }

非常感谢您的帮助

改变这个

return View("Index", "Home", model);

到视图完整路径和模型

return View("~/Views/Index.cshtml", model); //note this is an example so replace the path with yours

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

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

如果您需要进一步说明,请参阅此 link https://msdn.microsoft.com/en-us/library/system.web.mvc.controller.redirecttoaction(v=vs.118).aspx