在Web API中进行POST时,DTO中的标识符?

时间:2014-03-25 14:56:48

标签: api rest asp.net-web-api

我有一个Web API,我正在使用DTO从客户端抽象底层数据模型。我[目前]每个控制器有一个DTO。在所有情况下,此DTO都包含要传递的数据的数据库ID。在GET,PUT,DELETE这是有道理的(虽然DELETE和GET只是在请求上使用id而不是DTO),但是在POST上它没有意义,因为添加的新数据没有id然而。

换句话说,我要求客户端向API传递包含Id字段的结构,但我将忽略该Id字段的内容。这是可以接受的还是我应该创建一个UpdateDTO和一个RetrieveDto?

1 个答案:

答案 0 :(得分:0)

保留您拥有的数据结构。使Id字段可选。如果在POST进入时设置了Id的值,则返回错误。