【发布时间】:2011-10-04 14:16:06
【问题描述】:
我正在按照本教程创建第一个 mvc 应用程序 (Create a Movie Database Application)。
我已经添加了创建视图,但是当我单击创建新链接时,该页面不存在。典型的404 error。
我试过了
/home/create
/create
/create.aspx
/home/create.aspx
我是MVC 的新手,所以请不要笑。 :)
编辑:全球 .asax
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
家庭控制器
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Movies.Models;
namespace Movies.Controllers
{
public class HomeController : Controller
{
//
// GET: /Home/
private LearningEntities _db = new LearningEntities();
public ActionResult Index()
{
return View(_db.Movies1.ToList());
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create([Bind(Exclude = "Id")] Movie movieToCreate)
{
if (!ModelState.IsValid)
return View();
_db.AddToMovies1(movieToCreate);
_db.SaveChanges();
return RedirectToAction("Index");
}
}
}
【问题讨论】:
-
你的路线是什么样的?
-
您是在 IIS 中运行它还是使用内置的 Visual Studio Web 服务器 (Cassini)?
-
不,VS 服务器应该没问题。你能发布你的 Home 控制器吗?
-
你使用什么版本的mvc?我会使用 MVC3,然后你没有 .aspx 页面,但是 .cshtml 页面
-
您是如何创建视图的?右键单击您的操作和“添加视图”?检查您的views\home 文件夹中是否包含Create.aspx 页面(如果您使用剃须刀,可能是.cshtml)。还要检查你的家庭控制器是否有一个 create 方法。
标签: asp.net asp.net-mvc asp.net-mvc-3 asp.net-mvc-2