C# (CSharp) Flatwhite.WebApi Namespace

Nested Namespaces

Flatwhite.WebApi.CacheControl
Flatwhite.WebApi.Owin

Classes

Name Description
AsyncCountdownEvent
AsyncCountdownEvent.DebugView
CacheMessageHandler This is a custom WebApi message handler which try to build the response if cache data is available This should create a response asap if there is the cache without waiting for the OutputCacheAttribute to do that which is quite late and quite heavy "if your controller has too many dependencies". People should try to not having heavy Controller anyway.
CacheResponseBuilder Build a response from cacheItem but also take into account all cache-request-directive http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
ExtensionMethods
FlatwhiteStatusController Status controller
FlatwhiteStatusController.CacheItemStatus
FlatwhiteWebApiConfiguration Flatwhite webapi configuration
OutputCacheAttribute
RegisteredTasks
RevalidateAttribute
WebApiCacheItem A cache item object that keeps some details about the data to be cached
WebApiCacheStrategy A ICacheStrategy implementation for web api
WebApiCacheStrategyProvider A provider to return WebApiCacheStrategy for WebApi request
WebApiContextProvider A IContextProvider for webapi that puts request data to the context dictionary
WebApiExtensions
WebApiInvocation
WebApiPhoenix A web api phoenix to support auto refresh for webApi

It will create instance of WebApi controller and invoke the ActionMethod with cached arguments. It will not work if the controller required QueryString, Headers or anything outside these action method parameters But you can override the Phoenix MethodInfo, Arguments or method Phoenix.GetTargetInstance, Phoenix.InvokeAndGetBareResult, or completely change the way the Phoenix reborn by overriding method , Phoenix.Reborn, Idealy, keep Controller thin and use proper Model binding instead of dodgy access the Request object.