When I open the default MVC views(index and create) it work fine, I can add data and get data from the database. When I create a new view it don't work. It gets Http 404. This is even if I duplicate the create view, only with a different file name.
Error-message:
Server Error in '/' Application. The resource cannot be found. Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.
I have follow some forum suggestions from people with similar problems, but it don't work.
I use MVC 5, EF6, VS2013 and my DB is a MS-sql.
Any suggestions that point me in the right direction is appreciated. Thanks!
You should be accessing the view through an action method. So If you created your new view in ~/Views/Home/AboutMe.cshtml
, You should add an action method like this in your HomeController
.
public class HomeController : Controller
{
public ActionResult AboutMe()
{
return View();
}
}
Now you can access this like http://yourServerName/yourAppName/Home/AboutMe
If you want to have your action method in a different controller, You can specify the full view path. Ex : IF you want to add the action method to your Account controller,
public class AccountController : Controller
{
public ActionResult AboutMe()
{
return View("~/Views/Home/aboutme.cshtml");
}
}
All the Views are linked to an Action in your controller.
http://www.asp.net/mvc/tutorials/mvc-5/introduction/adding-a-controller
http://www.asp.net/mvc/tutorials/mvc-5/introduction/adding-a-view
No Action in controller -> 404 error!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With