首页 > 解决方案 > HttpPost Swagger 中的项目列表

问题描述

我有一个像这样的模型课-

public class Request
{
   public List<ProductIDs> ProductIDs { get; set; }
   public string Pid { get; set; }

}

在 Swagger 中,它是这样显示的——

在此处输入图像描述

在图片中,我发送的值为32a,但我想发送"32a"或发送什么。我的问题是,当我提出请求时,pid会到达控制器。但ProductIDs始终为 0。

标签: c#swagger

解决方案


我认为这是因为您传递的是对象“ProductID”而不是字符串。如果您的 ProductID 类只有一个变量,即一个字符串,那么使用起来可能会更简单:

public List<string> ProductIDs { get; set; }

否则,如果 ProductID 有多个变量,例如 ID、Location、Amount 等,您将需要传递一个对象而不是字符串。这意味着它在实际的招摇条目中看起来像这样:

{"ID": "32a", "var2": 421112, "Product Available":false}

Swagger 可以将其作为对象读取并分配正确的字段。如果你只是传递一个像 32a 这样的数字或字母,它实际上会将其读取为一个空的或格式不正确的对象。


推荐阅读