.net core保存数据后如何从ApiResult取返回数据
时间: 2024-03-23 15:37:26 浏览: 126
oracle的存储过程如何返回结果集
在 ASP.NET Core Web API 中,可以使用 ActionResult<T> 类型来封装 Web API 的返回结果,并在其中包含返回值。在保存数据后,可以将返回值作为 ActionResult<T> 的参数,然后在客户端中获取返回值。
以下是一个保存数据并返回结果的示例代码:
```csharp
[HttpPost]
public ActionResult<Product> CreateProduct(Product product)
{
_productRepository.Add(product);
_productRepository.SaveChanges();
return CreatedAtAction(nameof(GetProduct), new { id = product.Id }, product);
}
```
在客户端获取返回值时,需要先判断返回结果的状态码是否为成功状态码(通常为 201),然后再从返回结果中取出返回值。
以下是一个示例代码:
```csharp
var product = new Product { Name = "New Product", Price = 10 };
var response = await httpClient.PostAsJsonAsync("api/products", product);
if (response.IsSuccessStatusCode)
{
var newProduct = await response.Content.ReadAsAsync<Product>();
// 使用返回值
}
```
在上面的代码中,先使用 HttpClient 发送 POST 请求,将新产品的数据作为参数传递。然后判断返回结果的状态码是否为成功状态码,最后使用 ReadAsAsync 方法从返回结果中取出返回值。
阅读全文