ServiceStack - IOC处置

时间:2014-02-19 17:51:03

标签: servicestack ioc-container funq

我正在使用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处理的参考。我在这里错过了什么? 感谢

1 个答案:

答案 0 :(得分:0)

容器范围与Singleton Scope相同,仅在AppHost is disposed

时处理

RequestScoped资源在ServiceStackHost.OnEndRequest()

中处理

您可以覆盖AppHost中的AppHost.Release(object instance),以便在ServiceStack发布资源时收到通知。