asp.net-core-webapi - 模型包含接口属性未提交给 Web API 中的控制器
问题描述
在我的 Web API 应用程序中,我创建了一个模型,它具有三种属性类型的接口。现在来自我的客户,当我提交模型时,它没有命中控制器方法。如果我打开网络选项卡,我会发现一些错误。该请求是错误 (400) 请求。
模型
public class CreateNewOrganizationModel : ICreateNewRegistrationDto
{
[Required(ErrorMessage = "The {0} is required.")]
public IOrganizationDetailDto OrganizationDetail { get; set; }
[Required(ErrorMessage = "The {0} is required.")]
public IList<IUserRoleDetailDto> UserRoleDetails { get; set; }
[Required(ErrorMessage = "The {0} is required.")]
public IPersonalDetailDto PersonalDetail { get; set; }
}
网络选项卡错误
位置 223."],"UserRoleDetails[1].RoleName.1":["无法创建 CashFlow.Services.Dtos.IUserRoleDetailDto 类型的实例。类型是接口或抽象类,不能实例化。路径 'UserRoleDetails[1].RoleName',第 1 行,位置 266。"],"UserRoleDetails[2].RoleName.2":["无法创建 CashFlow.Services.Dtos.IUserRoleDetailDto 类型的实例。类型是接口或抽象类,不能实例化。路径 'UserRoleDetails[2].RoleName',第 1 行,位置 315。"],"UserRoleDetails[3].RoleName.3":["无法创建 CashFlow.Services.Dtos.IUserRoleDetailDto 类型的实例。类型是接口或抽象类,不能实例化。路径'UserRoleDetails[3].RoleName',第 1 行,位置 364。"],"UserRoleDetails[4]。RoleName.4":["无法创建 CashFlow.Services.Dtos.IUserRoleDetailDto 类型的实例。类型是接口或抽象类,不能实例化。路径'UserRoleDetails[4].RoleName',第 1 行,位置 409。"]},"type":"https://tools.ietf.org/html/rfc7231#section-6.5.1","title": "出现一个或多个验证错误。","status":400,"traceId":"|ed0f56a3-4be3d5ecfa7a80e4。"}
解决方案
推荐阅读
- django - Django Rest Framework-外键抛出错误
- google-chrome-devtools - 单步执行时防止消息积压
- java - 为什么我的流测试无法检查某些节点中的事务,即使它们存在于它们的存储中?
- linux - 谁是从 shell 函数生成的 shell 的用户
- c# - TimeZoneInfo SupportsDaylightSavingTime 没有返回我所期望的,为什么?
- wordpress - 两个 WordPress Multisite 安装在不同的子目录中
- python - 在python中将字符串更改为大写
- javascript - 导航到另一个页面后保持下拉菜单打开
- javascript - 递归求和二维数组
- java - 有没有办法让多个 jTextArea 可以在 Java-Netbeans 中共享滚动窗格?