我有这样的服务
public Sell Sell(Guid guid, double Quantity)
{
Sell sell = new Sell();
var result = _connectionDB.States.Find(guid);
sell.Name = result.Name;
sell.EAN = result.EAN;
sell.Profit = result.Profit;
sell.Quantity = Quantity;
sell.SellePriceBrutto = result.SellePriceBrutto;
sell.GTU = result.GTU;
sell.dateTimeSell = DateTime.Now;
sell.PurchasePriceNetto = result.PurchasePriceNetto;
sell.Id = Guid.NewGuid();
_connectionDB.Sells.Add(sell);
result.Quantity = result.Quantity - Quantity;
_connectionDB.SaveChanges();
return sell;
}
和控制器
[HttpPut("Sell")]
public IActionResult Sell(Guid guid, double Quantity)
{
var result = _connectionDB.States.Find(guid);
if (result == null)
{
return Ok("No product in DB");
}
if (result.Quantity < 0)
{
return Ok("No Quantiti product in DB");
}
var sell = _userService.Sell(guid, Quantity);
return Ok(sell);
}
此函数执行以下操作:
根据Id,它搜索产品,更改其数量并将其添加到sold表。生成链接:https://localhost:7038/api/Warhause/Sell?guid=76f42455-0885-4edb-9d0a-0ebdd7610e4f&Quantity=1
在 Swagger 的一面,它工作得很好。HttpClient中是否有任何函数调用这样的端点?
2条答案
按热度按时间wkyowqbh1#
是的,您可以使用
HttpClient
类调用WCF服务的端点。下面是一个如何使用HttpClient
发出PUT请求的示例:确保将占位符值替换为您希望在请求中发送的实际
guid
和quantity
。HttpClient
类允许您发送HTTP请求并处理响应。在这个例子中,我们使用PutAsync
向指定的URL发出PUT请求。然后,您可以根据返回的状态代码处理响应。如果请求成功(状态码200-299),您可以读取响应内容并将其反序列化到
Sell
对象或任何其他相关类中。记住包含必要的
using
语句,并调整代码以适应您的特定场景。yzxexxkh2#
谢谢你的回答,我不知道你可以在这个函数中传递null。这对我很有效: