如何在我的控制器中使用我的控制器中的兩個建構式?
我有這兩個控制器,我public class OrdersController需要它們用于 CRUD 操作,包括背景關系和 HttpClientFactory 用于另一個 API
private readonly IHttpClientFactory httpClientFactory;
// I want to use this constructor as well as
[ActivatorUtilitiesConstructor]
public OrdersController(IHttpClientFactory httpClientFactory)
{
this.httpClientFactory = httpClientFactory;
}
private readonly AnimimoMicroservicesNewOrderServiceContext _context;
// this one
public OrdersController(AnimimoMicroservicesNewOrderServiceContext context)
{
_context = context;
}
在此先感謝您的幫助
uj5u.com熱心網友回復:
您可能正在尋找帶有兩個引數的建構式嗎?
public OrdersController(IHttpClientFactory httpClientFactory, AnimimoMicroservicesNewOrderServiceContext context)
{
_context = context;
this.httpClientFactory = httpClientFactory;
}
uj5u.com熱心網友回復:
您可以使用 Robert 的解決方案,或者另一方面,您可以在必要時使用FromServicesAttribute將一些物件直接注入控制器的方法中。
例子:
private readonly IHttpClientFactory httpClientFactory;
public OrdersController(IHttpClientFactory httpClientFactory)
{
this.httpClientFactory = httpClientFactory;
}
[HttpPost]
public IActionResult CreateOrder([FromServices] AnimimoMicroservicesNewOrderServiceContext context)
{
var data = context.CallMethod();
return Ok(data);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/403888.html
標籤:
上一篇:如何取消/停止協程并暫停協程?
