c# - 从 ASP.NET MVC 迁移到 ASP.NET Core MVC - 动作模型绑定导致 null
问题描述
在从 ASP.NET MVC 迁移到 ASP.NET Core MVC 时,我遇到了无法克服的绑定行为问题。
我有这个控制器(用于 Razor,而不是 API):
public class SomeController : Controller
{
[HttpPost]
public IActionResult SomeAction([FromBody] SomeModel model)
{
return Ok(model?.SomeValue);
}
}
public class SomeModel
{
public int SomeValue { get; set; }
}
/some/someAction
如果我使用 的主体发出请求{ "SomeValue": "6970" }
,我会得到一个等于 null 的模型。
如果我删除引号{ "SomeValue": 6970 }
,我会收到我需要的东西,模型不为空。
该项目很大,我无法将所有 js 代码更改为 int,更改所有期望 int 的模型也可能是一个问题。
我怎样才能让它轻松工作?
解决方案
尝试将您的模型从 int 更改为 string 并检查它是否有效
推荐阅读
- gcc - 其中只编译源文件但不链接目标文件的场景
- azure - Azure AD B2C 无密码登录自定义策略
- python - 如何复制列表值并附加回同一个列表?
- reactjs - 为什么我的反应路由器交换机未检测到身份验证状态更改?
- java - 带有 MultipartFile 参数的 SpringBoot 端点的不完整 Swagger 文档
- uwp - UWP全屏模式:如何在鼠标移动时不显示任务栏/蓝色矩形
- firebase - 来自多个嵌套子项的 Firebase 查询
- css - 当鼠标悬停在对象上时,使对象出现
- angular - 如何使用角度选择器 2 次但组件初始化一次?
- wordpress - 安装leadpage插件后WordPress站点关闭