Created a new view in MVC 5, opening the new view results in HTTP 404

7.4k views Asked by At

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!

3

There are 3 answers

1
Shyju On

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

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!

1
Jeremy On

Set as startup page now gives the wrong url, producing the 404