ASP.NET MVC URI 参数命名



我正在使用 ASP.NET MVC Web API 控制器,我只是一个初学者,所以也许我的问题很琐碎......

我想将一个名为 $filter 的参数作为控制器方法的输入:

[Route("List")]
[HttpGet]
public IHttpActionResult List([FromUri] string $filter = null)
{
    // ... code here ...
    return (Ok());
}

但是我不能这样做,因为$filter不是有效的 C# 变量名称!

无论如何(由于客户要求(我真的需要调用该方法在 URI 中传递$filter=something......

我该怎么办?有没有一种方法可以"映射"URI参数的命名,以便在代码中使用变量名称filter(没有美元(,然后指示MVC层将$filter映射到filter

设置 FromUriAttributeName 属性:

[Route("List")]
[HttpGet]
public IHttpActionResult List([FromUri(Name = "$filter")] string filter = null)
{
    // ... code here ...
    return (Ok());
}

最新更新