我正在努力了解asp.net服务器的实现和路由。我试图在这个论坛上搜索答案(例如这个链接; WebApi 2.0 Routes not matching with query parameters?,但我还没有任何工作。我想在客户端有一个表格:
<"form id="search-form" name="search-form" method="get" action="page.html"
onsubmit="return validate();">
<"input id="inputText" name="question" type="text"
placeholder="Search..." class="inputsearch">
<"/form>
这将允许我向服务器发送查询(例如“test”),看起来像“page.html?question = test”。我的控制器被称为产品(但在我看来,我不需要在表单上的动作标签中指定它,所以我认为我需要一些路由,如:
[HttpGet]
[Route("~/api/products?{queryWord}")]
public IHttpActionResult test(string queryWord)
{
Debug.Write(queryWord);
return Ok("<html>hey</html>");
}
这似乎从该链接的答案中有效,但我收到一条错误消息:
路由模板不能以'/'或'〜'字符开头 不能包含'?'字符。参数名称:routeTemplate