WEB API接受对象类型入参无实体类
时间: 2023-07-13 15:16:12 浏览: 70
在 Web API 中,如果需要接收一个没有对应实体类的 JSON 对象作为参数,可以使用 dynamic 类型来接收请求正文中的 JSON 数据,然后在代码中对其进行处理。例如,假设客户端发送了以下 JSON 数据:
```json
{
"name": "John",
"age": 30
}
```
可以在控制器的操作方法中接受一个 dynamic 类型的参数:
```csharp
[HttpPost]
public IActionResult SavePerson([FromBody] dynamic person)
{
string name = person.name;
int age = person.age;
// 处理 name 和 age 数据
// ...
return Ok();
}
```
在上面的代码中,通过访问 dynamic 类型的 person 对象,可以获取其 name 和 age 属性的值,并进行相应的处理。需要注意的是,由于 dynamic 类型是动态类型,因此在编译时无法检查其属性和方法的存在性和正确性,因此需要在代码中进行额外的检查和转换。另外,使用 dynamic 类型可能会降低代码的可读性和可维护性,因此建议在可能的情况下使用实体类来接受请求正文中的 JSON 数据。