コード例 #1
0
        /// <summary>
        /// Invalidate the output cache using the given action executed context
        /// for all the get-methods for all POST, PUT and DELETE http methods successfully processed
        /// </summary>
        /// <param name="actionExecutedContext">The context</param>
        protected override void InvalidateOutputCache(
            HttpActionExecutedContext actionExecutedContext)
        {
            if (!actionExecutedContext.MayRequestModifyResult())
            {
                return;
            }

            var allGetActionNames = FindAllGetActionNames(actionExecutedContext);

            if (allGetActionNames.IsNullOrEmpty())
            {
                return;
            }

            foreach (var actionName in allGetActionNames)
            {
                RemoveIfExists(actionExecutedContext, actionName);
            }
        }