在Swagger UI中是否有一种方法可以在POST上隐藏某个字段(例如Employee ID),但在PATCH和GET



因此,对于POST,显然我们不希望EmployeeID出现在BODY上(因为这将刚刚创建),但是对于PATCH和get,我想向用户显示他们需要在BODY上输入EmployeeID。这只是一个示例场景,我们当然可以将员工ID放在路径上,但我需要在body中添加一些条件字段。

您必须为不同的调用使用不同的模型!否则可能会发生不好的事情(代码注入等)。为了减少代码重复,你可以使用一个类来保存所有需要的关于你的雇员的属性,然后创建一个CreateEmployee类,从它派生,并有额外的id属性。此外,swagger中使用的类(或者更确切地说:通过api公开的所有类)应该是哑DTO类,而不是存储中使用的类(如EF类)。在通过REST调用接收到DTO类之后,您必须验证并将信息复制到业务逻辑中使用的类中。这个验证过程最简单的方法是FluentValidation,复制过程最简单的方法是AutoMapper。

相关内容

最新更新