为每个操作

时间:2016-07-10 03:21:55

标签: asp.net asp.net-mvc routes slug

说我的模型是这样的:

public class Book 
{
    public String ID { get; set; }
    public String Title { get; set; }
}

public class Author
{
    public String ID { get; set; }
    public String Name { get; set; }
}

我的RouteConfig定义如下:

routes.MapRoute(
    name: "Book",
    url: "Book/{id}",
    defaults: new { controller = "Books", action = "Book" }
);

routes.MapRoute(
    name: "Author",
    url: "Author/{id}",
    defaults: new { controller = "Authors", action = "Author" }
);

现在,我想在每条Author路线和每条Book路线的末尾添加一个slu ..例如:

  

/作者/ 1 => /作者/ 1 / sir-arthur-conan-doyle

     

/ Book / 1 => /预订/ 1 /夏洛特-浏览量

我的所有ActionLinks和Url返回值都已定义,所以当我可以返回并向MapRoute函数添加一个slug并单独修改每个ActionLink时,我想,肯定必须有一个更好的方式。

我希望自动创建slu for所以我不必返回并更改我访问书籍或作者的所有路线值。每次引用/Author/1时,我都希望它在服务器上转换为/Author/1/sir-arthur-conan-doyle。我怎么能做到这一点?

0 个答案:

没有答案