c# - 无法在 asp.net core 2.0 中发布原始类型

标签 c# asp.net-core

我将非常简单的 json 数据发布到 .net Core 2.0 API。

为什么当我有这样的方法时:

public async Task<IActionResult> GetNewToken([FromBody]string id)

然后 id 为空,但如果我将其封装在模型中:
public class RandomViewModel
{
    public string id { get; set; }
}

public async Task<IActionResult> GetNewToken([FromBody]RandomViewModel model)

那么我的 id 是否正确填充?

最佳答案

实际上,您可以从请求正文中发布原始类型,但不应使用键/值,例如:

public async Task<IActionResult> LockUserByDate(Guid appUserId, [FromBody] string lockoutEnd)

考虑一下这个 Action ,当我在 Postman 中测试它时,如果我将它用于 body :
{
 "lockoutEnd": "2018-03-15 16:30:35.4766052"
}

然后它不绑定(bind)但如果我只使用正文中的值,模型绑定(bind)器绑定(bind)值:
"2018-06-15 16:30:35.4766052"

enter image description here

关于c# - 无法在 asp.net core 2.0 中发布原始类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49082543/

相关文章:

c# - 如何找到光标在文本框中的位置? C#

c# - ASP+EF加载程序集问题

c# - 如何获取 System.Diagnostics.Process 的输出?

c# - launchSettings.json 和 appSettings.json 是如何工作的?

iis - 从 IIS 上的 ASP.NET Core 应用程序请求超时

c# - 登录后阶段超时时间已过

mysql - Entity Framework 核心 : Update() method INSERTs instead of UPDATEs on dependent entity

c# - 使用 EF6( Entity Framework 6)编写单元测试

c# - asp.net core 2.1模型绑定(bind)(提交后)

c# - 依赖 bool 属性