我正在编写一个 Web API,我希望了解处理可选查询字符串参数的最佳方法是什么。
我有一个定义如下的方法:
[HttpPost]
public HttpResponseMessage ResetPassword(User user)
{
var queryVars = Request.RequestUri.ParseQueryString();
int createdBy = Convert.ToInt32(queryVars["createdby"]);
var appId = Convert.ToInt32(queryVars["appid"]);
var timeoutInMinutes = Convert.ToInt32(queryVars["timeout"]);
_userService.ResetPassword(user, createdBy, appId, timeoutInMinutes);
return new HttpResponseMessage(HttpStatusCode.OK);
}
我可以通过在帖子正文中提供用户对象并可选地提供任何其他查询字符串值来调用它,但是当我有一个随机参数的一次性案例时,这是解析最好的方法吗?
如果我有同样的场景,但有 15 个可选参数(可能是极端情况)怎么办?