我的 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。