【发布时间】:2020-09-12 04:38:42
【问题描述】:
我在我的 API 中创建了一个 POST 方法,并通过 Postman 调用它。尽管一切正常并且对象被插入到数据库中,但 Postman 给了我 HTTP 状态代码 204 No content - 就像没有要输出的内容一样。我编写代码的方式,我假设它应该输出我创建的对象。
TitleController.cs
[HttpPost()]
public IActionResult InsertTitle([FromBody] GtlTitle gtlTitle)
{
try
{
return Ok(_gtlTitleRepository.InsertTitle(gtlTitle));
}
catch(Exception e)
{
return BadRequest();
}
}
IGtlTitleRepository.cs
GtlTitle InsertTitle(GtlTitle gtlTitle);
MockGtlTitleRepository.cs
public GtlTitle InsertTitle([FromBody] GtlTitle gtlTitle)
{
using (var connection = new SqlConnection(_connection))
{
connection.Open();
return connection.ExecuteScalar<GtlTitle>(@"INSERT INTO GTL_TITLE (ISBN, VolumeName, TitleDescription, PublicationDate, AuthorID, PublisherID, TempID)
VALUES (@ISBN, @VolumeName, @TitleDescription, @PublicationDate, @AuthorID, @PublisherID, @TempID)",
new
{
gtlTitle.ISBN,
gtlTitle.VolumeName,
gtlTitle.TitleDescription,
gtlTitle.PublicationDate,
gtlTitle.AuthorID,
gtlTitle.PublisherID,
gtlTitle.TempID
});
}
}
我做错了什么?在 Postman 中完成 POST 方法后,我应该返回什么(以及在哪个控制器中)以检索对象?
【问题讨论】:
标签: c# http asp.net-web-api postman