如何为MVC页面设置路由
本文关键字:页面设置 路由 MVC | 更新日期: 2023-09-27 18:27:32
MVC新手问候。。。我正在创建我的第一个MVC应用程序,并且创建如下:
CustomUtilities/Controllers/GCItemRetrievalController.cs
CustomUtilities/Views/GCItemRetrieval/GCRetrieve.cshtml
CustomUtilities/Views/Web.config
我想在浏览器中调出"GCRetrieve.cshtml……但我一直收到404错误
http://mainsite/CustomUtilities/GCItemRetrieval/GCRetrieve
我做错了什么?我在主系统上的一个单独的文件夹中创建了控制器、模型和视图的文件夹。
您的控制器应该是这样的:
public class GCItemRetrievalController : Controller
{
public ActionResult GCRetrieve()
{
return View();
}
}
当您导航到以下网址时:
http://mainsite/CustomUtilities/GCItemRetrieval/GCRetrieve
它应该找到控制器的GCRetrieve
方法并执行它。return View()
调用将查找。名为GCRetrieve.cshtml
的cshtml
文件,因为这是方法的名称。
public class RouteConfig
{
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 }
);
}
}
创建MVC应用程序时,会在App_Start目录中创建名为RouteConfig.cs的类文件。默认路由为
public class RouteConfig
{
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 }
);
}
}
在上述默认路由中:如果要调用视图CustomUtilities/Views/GCItemRetrieval/GCCretrieve.cshtml
我认为CustomUtilities是您的项目名称,然后使用以下
http://mainsite/GCItemRetrieval/GCRetrieve就是[domanin]/[controllername]/[actionname]
有关默认路由的详细信息,请参阅http://www.niceonecode.com/Q-A/DotNet/MVC/routing-in-mvc-4/20190