我在Swashbuckle遇到了一些问题。 我们有一个模型学生,如下所示:
public class Student
{
public int Id { get; set; }
public string Name { get; set; }
public string Class { get; set; }
public StudentStatus Status { get; set; }
}
现在,在PUT操作中,everthings工作正常,但在POST中我想从我们必须发送到API的正文中删除Id和status参数。
关于如何做到这一点的任何想法?
非常感谢能够解决这个问题的人!
答案 0 :(得分:3)
您应该有一个单独的模型类,它准确地表示允许客户端为这两个操作中的每个操作发送的内容。因此,在这种情况下,两个单独的类,称为StudentPostModel和StudentPutModel,并在每个类中包含所需的字段。
除了在Swagger中让事情变得混乱之外,如果你试图在不同的情境中重复使用相同的模型,你也可以让自己过度发布攻击。