我们的MVC应用程序调用使用HttpClient的一个动作的WebAPI。 我决定要注入的HttpClient使用StructureMap的并覆盖在处置控制器
public HomeController(HttpClient httpClient)
{
_httpClient = httpClient;
}
protected override void Dispose(bool disposing)
{
if (disposing && _httpClient != null)
{
_httpClient.Dispose();
}
base.Dispose(disposing);
}
该StructureMap ObjectInitialize基本上是这样的..
x.For<HttpClient>().Use(() => new HttpClient() { BaseAddress = "my/uri/"});
当我建立这个,CodeAnalysis笙歌"Dispose objects before losing scope"
,并指向IoC的代码。
我能够抑制,或者我需要处置的HttpClient? 我也试过
protected void Application_EndRequest(object sender, EventArgs e)
{
ObjectFactory.ReleaseAndDisposeAllHttpScopedObjects();
}
但我仍然得到那个违反规则。