路由到Razor页面中的属性

时间:2019-11-29 07:13:28

标签: c# get razor-pages

假设我在Razor Pages的页面模型中添加了某种ID号的属性:

[BindProperty(SupportsGet = true)]
public int Id { get; set; }

然后我可以通过如下网址设置Id

  

localhost:5001 /?Id = 1

但是,通过执行以下操作,通常(例如,在创建API时)您会获得一种更漂亮(至少我认为是这样)的方式来设置Id

  

localhost:5001 / Id / 1

默认情况下,这似乎不适用于Razor Pages。有什么方法可以启用它吗?

注意:我已经尝试使用Google进行搜索,但是我不确定该术语。设置属性时也称为路由吗?

1 个答案:

答案 0 :(得分:1)

它称为Route Data。您可以在@page指令中为路由模板中的路由数据参数指定占位符:

@page "{id}" // will match localhost:5001/1

如果您希望术语“ Id”出现在URL中(例如匹配localhost:5001/Id/1),则路由模板将如下所示:

@page "Id/{id}"

通常,您不在路由模板中包含参数名称。