我正在使用MVC和实体框架,并且我使用以下代码从表中恢复所有内容并将其显示在屏幕上
public ActionResult Index(int? id)
{
if (id == null) {
return View(db.DDLs.ToList());
} else {
var drafts = db.DDLs.Where(d => d.DDLTypeID == id).ToList();
return View(drafts);
}
}
输入此网址会显示整个表格的内容,我希望如此。
本地主机:2378 / DDL /
索引是默认的ActionResult / routes所以我认为使用MVC / EF我可以使用
本地主机:2378 / DDL / 1
只返回DDLTypeID = 1的记录,但我必须像这样包含默认的ActionResult / route。
本地主机:2378 / DDL /索引/ 1
有没有办法使用
本地主机:2378 / DDL / 1
还是我对MVC / EF有另一种基本的误解?
如果有帮助的话,我使用Visual Studio创建的默认路由。
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
由于
答案 0 :(得分:0)
您可以将路径的多个模式映射到同一个操作方法。 路由只与ASP.NET MVC有关,它与EF无关。