我需要使用以下格式向Web API控制器运行REST查询请求:
http://path/name.json?foo.bar.text=aCertainValue
(我无法更改此格式,因为它取决于外部提供商)。
我的问题是我无法检索查询结果。
我在服务器代码(用C#编写)上尝试了以下选项:
[HttpGet]
[Route(Name = "name.json")]
public List<SpaceFound3rdParty> findRes([FromUri (Name = "foo.bar.text")] string text)
{...}
和
[HttpGet]
[Route("name.json")]
public List<SpaceFound3rdParty> findRes([FromUri (Name = "foo.bar.text")] string text)
{...}
没有一个成功。
如果我指定的名称没有点(即没有路径的名称),并且使用/?
作为路径名称和资源名称之间的分隔符,则可以成功检索资源。但是,这不是一种选择(即使请求中只有一个资源,我也必须使用?
。
如何在维护请求的格式pathName?resourceName
的同时修改C#服务器以检索资源?
答案 0 :(得分:0)
在此处粘贴您的RouteConfig.cs
。您正在使用属性路由,因此您可能需要通过调用MvcAttributeRoutes()
文件中的此辅助函数'RouteConfig.cs
'来注册这些操作。
希望它能解决!