首页 > 解决方案 > 调用 WebApi Endpoint 传入对象

问题描述

我有以下端点

[HttpPost]
[DisableRequestSizeLimit]
[RequestFormLimits(KeyLengthLimit = int.MaxValue)]
public IActionResult PostData([FromForm]Data data)

数据类看起来像这样

public class Data
{
    public string A { get; set; }
    public string B { get; set; }
}

我以这种方式调用此端点

var url = ...;

var client = new HttpClient();
var data = new
{
    a = "Foo",
    b = "Bar"
};
var result = await client.PostAsJsonAsync(url, data);

但是 PostData 方法中的 data 参数始终为 null。任何想法我做错了什么?

标签: c#asp.net-coreasp.net-web-apihttpclientrestsharp

解决方案


如果您的内容类型是application/jsonuse[FromBody]而不是[FromForm].


推荐阅读