我正在尝试在运行测试时使用OWIN自我主机Web API,我想启动它BeforeEach并停止AfterEach方法.
我发现的所有示例都建议使用using关键字,例如
using (WebApp.Start<Startup>(url: baseAddress))
{
...
}
Run Code Online (Sandbox Code Playgroud)
但就我而言,它没有帮助.
我试着这样做:
private IDisposable _webApp;
public override void BeforeEach()
{
_webApp = WebApp.Start<OwinStartup>("http://localhost:99999/");
}
public override void AfterEach()
{
base.AfterEach();
if (_webApp != null)
_webApp.Dispose();
}
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,它调用类的Dispose方法,UnityResolver然后我得到stackoverflow...异常.
我该如何妥善处理OWIN主机?