Asp.net mvc ASP.NET MVC路线:产品类别和slug

Asp.net mvc ASP.NET MVC路线:产品类别和slug,asp.net-mvc,routes,friendly-url,Asp.net Mvc,Routes,Friendly Url,我有一个ProductController用于查看产品。 产品有一个slug和一个category 我想要下面的例子 URL CONTROLLER ACTION PARAMETER www.example.com/products -> ProductController.Products : "" (empty s

我有一个ProductController用于查看产品。 产品有一个slug和一个category

我想要下面的例子

URL                                               CONTROLLER ACTION                   PARAMETER
www.example.com/products                   -> ProductController.Products      :  "" (empty string)
www.example.com/products/phones            -> ProductController.Products      :  "phones"
www.example.com/products/phones/iPhone     -> ProductController.Details       :  "phones" &"iPhone"
最好实现为路由属性[HttpGetroute here]。但是Startup.cs中的routes.MapRoute也可以

谢谢

我试过的 前两条路线目前适用于我:

[HttpGet("products/{category?}")]
public ActionResult Products(string category)
但最后一条路线似乎不起作用:

[HttpGet("products/{category}/{slug}")]
public ActionResult Details(string category, string slug)

我不敢相信我回答了这个问题,却没有让你自己去解决它,但下面是代码

public class ProductController : Controller
{
    [Route("products/{productType}")]
    public ActionResult Products(string productType)
    {

    }

    [Route("products/{productType}/{product}")]
    public ActionResult Details(string productType, string product)
    {

    }
}

您遇到了哪些问题?你试过什么?正如你在我更新的问题中看到的,我已经试过了。但我是个白痴。我只是在监督一些失踪的人,托洛尔。我的错。你的回答是正确的。