我有以下的Web API控制器的Web API控制器 - 在查詢字符串「行動」參數
public class ApiController : Controller
{
[Route("api/test")]
[HttpGet]
public string GetData(string key, string action, long id)
{
var actionFromQuery = Request.Query["action"];
return $"{key} {action} {id}";
}
}
我需要一個名爲查詢字符串「行動」參數所以它與現有的API向後兼容。
當我發出get請求時,action方法參數被錯誤地分配給web api action == controller method name。
例GET
http://SERVER_IP/api/test?key=123&action=testAction&id=456
返回 「123的GetData 456」
我希望它返回 「123 testAction 456」
actionFromQuery變量被正確地分配給 'testAction'。
'行動'是一個保留的變量,不能被覆蓋?
我可以通過更改某些配置來解決這個問題嗎?
我沒有配置任何路由,只有services.AddMvc();和app.UseMvc();在我的啓動。
嘗試註釋[FromUri]'屬性的'action'參數 –
謝謝,添加'[FromQuery]'修復了它(使用ASP.NET Core)。 添加這個答案作爲答案,我會接受它。 – stkxchng