为ID参数和操作/ID创建MVC路由



此URL www.mysite.com/Brazil应路由到此控制器:

public async Task<IActionResult> CountryPage(string countryName)

和乡村名称应为 Brazil

我尝试使用此自定义路线:

routes.MapRoute(
    "Country",
    "{id}",
    new { controller = "Countries", action = "CountryPage", id = "{id}" });

当我的控制器是:

public async Task<IActionResult> CountryPage(string id)

,但我在ID中得到的只是{id}

如何完成?

为此,您可以利用属性路由。为此,请使用[Route()]数据注释来装饰您的控制器方法。

countrycontroller.cs

[Route("{country}")]
public IActionResult CountryPage(string country)
{
    return Ok(country);
}

访问https://localhost:44376/Brazil时,应用程序返回:

巴西

最新更新