【发布时间】:2013-07-29 13:32:22
【问题描述】:
我的 WebApi 控制器名为 SrchController,具有以下列出的概念验证操作/方法。
我想通过操纵 url 来调用这个方法/动作(不知道叫什么)。用于测试目的。所以我的印象是这会使用模型绑定。
如果我在浏览器地址中输入[mysiteroot]/api/srch/TestResults?criteria.name = "hello",我希望在方法中设置标准值
[HttpGet]
public IEnumerable<ParcelResultItemViewModel> TestResults(SimpleViewModel criteria)
{
//check value of criteria....it is always null. <-- i'm expecting name = "hello"
//do stuff here
return something;
}
我的问题与这个问题密切相关 How to handle optional query string parameters in Web API Darin 指出它应该按我的预期工作。有什么问题?
webapi 路由
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
更新
我没有收到任何错误消息,传递给该方法的视图模型的值只是 null。
【问题讨论】:
标签: c# asp.net-web-api query-string