如何在请求json中收到未映射的字段时强制Web API引发错误

约书亚·迪克森(Joshua Dixon)

我正在使用Web API构建REST API。我遇到的问题是JSON序列化程序不会拒绝未映射的字段。假设我有一个像这样的简单对象:

public class MyClass
{
 public bool MyBool { get; set; }
 public string MyString { get; set; }
}

我有一个简单的控制器,可以在请求正文中接受此类对象

public void Post(MyClass instace)
{
   ...
}

现在,我在请求正文中使用以下JSON将请求发布到此控制器的端点:

{“ MyBool”:true,“ MyString”:“有效”,“ InvalidField”:“无效”}

当前,控制器将静默接受此请求,将True映射到MyBool,将“ Valid”映射到MyString,同时忽略InvalidField。如何更改此设置,以便在出现无效字段时引发错误?

巴德里

我相信Required这不是您要查找的内容,因为您对请求中存在的其他字段感兴趣。Required用于缺少的字段。您可以自己读取JSON并进行验证,但是对我来说这是很多工作。因此,我会注意绑定方面的工作。我只是写了一个小博客文章来回答这个问题。检查一下http://lbadri.wordpress.com/2014/01/28/detecting-extra-fields-in-asp-net-web-api-request/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Atlassian API在API中附加文件时引发错误

来自分类Dev

JSON解析引发错误

来自分类Dev

JSON解析引发错误

来自分类Dev

如何在Bash中引发错误?

来自分类Dev

LUIS响应引发错误的错误请求

来自分类Dev

API管理器引发错误“在收到请求之前目标主机已关闭连接”

来自分类Dev

在输入API请求中发现未知属性时引发错误?

来自分类Dev

编写ConnectionIO时如何引发错误?

来自分类Dev

Axios发布请求引发错误请求

来自分类Dev

SQL更新未引发错误

来自分类Dev

Google Recaptcha重置时引发错误

来自分类Dev

使用模拟时,IEDriverServer引发错误

来自分类Dev

传递BigInt时isNaN()引发错误

来自分类Dev

附加文件时,ActionMailer引发错误

来自分类Dev

Powershell在删除目录时引发错误

来自分类Dev

启动时AnyLogic引发错误

来自分类Dev

提取文件时tar引发错误

来自分类Dev

如何引发错误的词法转换异常

来自分类Dev

Rspec:如何测试引发错误的方法

来自分类Dev

如何为completionHandler引发错误?

来自分类Dev

如何丢弃引发错误的记录?

来自分类Dev

groupBy方法在Slick中引发错误

来自分类Dev

VSIX封装中的$ safeprojectname $引发错误

来自分类Dev

约定的ExpressJs函数中引发错误

来自分类Dev

在递归函数中引发错误

来自分类Dev

SASS mixin中的条件引发错误

来自分类Dev

mlUnittest在MarkLogic中引发错误

来自分类Dev

Scala Kleisli在IntelliJ中引发错误

来自分类Dev

minDate在bsDatepicker中引发错误