【发布时间】:2015-02-02 08:24:46
【问题描述】:
有以下动作:
public IHttpActionResult GetStuff(
string like = null,
[FromUri]string[] state = null,
[FromUri]string[] mode = null,
[FromUri]string[] label = null,
)
当我将其查询为 /api/stuff?state=A&state=B 时,模型绑定器会使用 2 个字符串值实例化 state 数组,并且可以实例化空的 mode 和 label 数组,因此我不需要检查空值。但是,如果我将其查询为 /api/stuff?&state=A&state=B(注意额外的 & 号)mode 和 label 数组不再为空 - 它们都包含单个 null 元素。为什么?
据我了解,查询字符串是等价的。有什么方法可以在不编写自定义活页夹的情况下修复它?
【问题讨论】:
标签: c# .net url asp.net-web-api model-binding