RequestContext
Abstraction to provide a context per request. in aspnet.web its equivalent to System.Web.HttpContext.Current.Items falls back to CallContext
Assembly: ServiceStack.dll
View Source
Declaration
public class RequestContext
Properties
Items
Gets a list of items for this request.
View Source
Declaration
public virtual IDictionary Items { get; set; }
Fields
Instance
View Source
Declaration
public static readonly RequestContext Instance
UseThreadStatic
Tell ServiceStack to use ThreadStatic Items Collection for RequestScoped items. Warning: ThreadStatic Items aren't pinned to the same request in async services which callback on different threads.
View Source
Declaration
public static bool UseThreadStatic
RequestItems
View Source
Declaration
[ThreadStatic]
public static IDictionary RequestItems
Methods
StartRequestContext()
Start a new Request context, everything deeper in Async pipeline will get this new RequestContext dictionary.
View Source
Declaration
public void StartRequestContext()
GetOrCreate<T>(Func<T>)
View Source
Declaration
public T GetOrCreate<T>(Func<T> createFn)
Returns
<T>
Parameters
Type | Name |
---|---|
System.Func<<T>> | createFn |
Type Parameters
T
EndRequest()
View Source
Declaration
public void EndRequest()
TrackDisposable(IDisposable)
Track any IDisposable's to dispose of at the end of the request in IAppHost.OnEndRequest()
View Source
Declaration
public void TrackDisposable(IDisposable instance)
Parameters
Type | Name |
---|---|
System.IDisposable | instance |
ReleaseDisposables()
Release currently registered dependencies for this request
View Source
Declaration
public bool ReleaseDisposables()
Returns
System.Boolean
: true if any dependencies were released