来自uri的WebAPI模型绑定,检查错误的属性名称(错别字)

时间:2016-05-09 22:24:23

标签: asp.net-web-api model-binding

我想在使用[FromUri]复杂模型对象的Get方法中知道,如果模型中不存在某些参数名称。

因此,我可以在响应中包含对用户的某种警告,让他知道某些查询字符串参数对此端点无效。

(目前正在为[FromBody]工作,因为我可以在Jsonserializer中查看)

有什么想法吗?

修改

假设我有一个默认的WebAPI项目。但是,让我提出一个更清晰的样本。

public async Task<IHttpActionResult> MyActionAsync(MyModel model)

并且

public class MyModel
{
public string PropertyOne { get; set; }
public string PropertyTwo { get; set; }
}

如果我提出请求

http://localhost/myapi/myaction?PropertyOne=1&PropertyThree=3

我想知道什么是通用的方式来获得&#34; PropertyThree&#34;并在回复中包含一条警告,说明&#34; PropertyThree与模型中的任何属性都不匹配&#34;。

(在响应中包含该部分的部分不是问题,如果请求是POST,我已将其包括在内)。

我的意思是&#34;通用方式&#34;因为我有很多端点,我不想实现一个必须改变所有现有控制器/操作的解决方案。

1 个答案:

答案 0 :(得分:0)

不确定我是否遗漏了一些内容,因为如果没有看到您的代码就很难回答,但是您无法检查该属性是否为空?

if (MyComplexObject.MyProperty == null) {
    //send message to user
}