我正在使用ServiceStack的funq,我试图抓住IOC在请求结束时被处置的地方。特别是对于scope = ReuseScope.Request的条目。
我正在查看RestHandler的ProcessRequest方法,该方法是由Asp.NET直接调用的方法,它的结尾如下:
(...)
if (doJsonp && !(response is CompressedResult))
httpRes.WriteToResponse(httpReq, response, (callback + "(").ToUtf8Bytes(), ")".ToUtf8Bytes());
else
httpRes.WriteToResponse(httpReq, response);
}
catch (Exception ex)
{
if (!EndpointHost.Config.WriteErrorsToResponse) throw;
HandleException(httpReq, httpRes, operationName, ex);
}
}
我没有看到Funq处理的参考。我在这里错过了什么? 感谢
答案 0 :(得分:0)
容器范围与Singleton Scope相同,仅在AppHost is disposed。
时处理RequestScoped资源在ServiceStackHost.OnEndRequest()
中处理您可以覆盖AppHost中的AppHost.Release(object instance)
,以便在ServiceStack发布资源时收到通知。