如何在URL中没有操作的情况下获取路由
我希望我的路线看起来像:
/product/123
我有一个动作GET,但我不想在URL中,它目前是:
/product/get/123
怎么弄这个?
的Global.asax.cs
RouteConfig.RegisterRoutes(RouteTable.Routes); public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default", "{controller}/{action}/{id}", new { controller = "Home", action = "Index", id = UrlParameter.Optional }, new[] { "MyApp.Web.Controllers" } ); }
您可以使用Route属性来定义您的路径,如下所示:
[Route("product")] public class ProductController { [Route("{productId}"] public ActionResult Get(int productId) { // your code here } }
其中为您提供了“/ product / {productId}”的完整路径定义,在您的案例中为“/ product / 123”。 更多细节: https : //blogs.msdn.microsoft.com/webdev/2013/10/17/attribute-routing-in-asp-net-mvc-5/
在默认路由之前的routes.MapRoute中添加此代码。
上述就是C#学习教程:如何在URL中没有操作的情况下获取路由分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
routes.MapRoute( name: "Product", url: "Product/{id}", defaults: new { controller = "product", action = "get"}
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1029684.html