asp.net-core - Asp.Net-Core 2.1:使用自定义 IInputFormater 的 ModelState 错误
问题描述
我要解决的问题是我需要支持有效载荷格式,但底层模型已经发生了相当大的变化。
为了实现这一点,我阅读了 custom ModelBinder
、InputFormater
和一些不同的主题,我保留的是,因为Content-Type
will be application/json
, theJsonInputFormatter
会处理它,不知道如何转换它,所以会将 null 模型传递给 API方法。
然后我决定实现一个InputFormatter
只处理该模型类型Content-Type
的自定义,并进行自定义反序列化。
我遇到的问题是,如果自定义反序列化中有错误,我必须调用InputFormatterResult.FailureAsync()
,这不允许我将信息传递回调用者告诉他出了什么问题。如果我使用 default JsonInputformatter
,在控制器中我可以将模型状态错误(ModelState.Values 的 Errors 属性)显示给调用者,但我找不到实现此目的的方法。
我的问题是:如何显示我在使用自定义时遇到的错误IInputFormatter
?
注意:如果我只是没有使用正确的工具进行自定义反序列化,任何指向正确方向的指针都将不胜感激。
解决方案
推荐阅读
- spring - 无法使用 Spring Security 加载静态资源
- c - 使用 void* 分配结构
- reactjs - 如何扩展 React 功能组件 Prop 类型?
- sql-server - SQL Server 2017 Management Studio:创建程序集错误
- php - preg_match 函数不适用于 if 语句?
- kubernetes - 创建集群所需的资源量 - Openshift v4.2
- android - 图像在 ImageView 中按大小扭曲
- c# - 如何存储表达式
> 在班级领域? - php - Ext.JSON.decode(): You're trying to decode an invalid JSON String 访问/source/index.php/file/upload/时出现问题
- docker - 新容器访问现有容器上的卷