是否可以忽略具有ASP.NET路由的URL的倒数第二部分?
e.g。 ../物品名称-X / 123456 /
无论产品名称如何变更,我们都希望始终在同一篇文章中添加文章ID并使用它来指向正确的文章。
我们有时会在公告时提供尚未获得最终名称的产品,因此我们需要在知道最终名称时进行更新。但是我们在通信中已经使用了初始URL,我们不希望以后断开链接。
有人能帮助我吗?
答案 0 :(得分:0)
如果我理解你的问题,你希望路线同时包含文章名称和 id 。
您可以在Attribute routing
中使用.net MVC
。将name和id作为路径中定义的路径参数传递。然后在操作中,您可以使用它们中的任何一个(或两者)来搜索文章。
首先在RegisterRoutes
方法
routes.MapMvcAttributeRoutes();
然后为您的操作定义Route
属性
[RoutePrefix("articles")]
[Route("{action=index}")]
public class ArticlesController : Controller
{
// e.g /articles
public ActionResult Index() { … }
// e.g. /articles/my-article-name/my-article-id
[Route("{name}/{id}")]
public ActionResult Search(string name, string id) { … }
}
此操作可以称为
articles/my-article-name/my-article-id
请参阅this article了解详情。
HTH。