/// <summary> /// Initialize application. /// </summary> /// <param name="context"></param> public void Init(HttpApplication context) { context.PreRequestHandlerExecute += (object sender, EventArgs e) => { FeedbackMessageStore.Load(); HttpContext.Current.AddOnRequestCompleted(ctx => { FeedbackMessageStore.Flash(); }); }; context.PostRequestHandlerExecute += (object sender, EventArgs e) => { FeedbackMessageStore.Flash(); }; }
/// <summary> /// Initialize FeedbackMessages. /// </summary> /// <param name="builder"></param> /// <returns></returns> public static IApplicationBuilder UseFeedackMessages(this IApplicationBuilder builder) { // set context accessor var httpContextAccessor = builder.ApplicationServices.GetRequiredService <IHttpContextAccessor>(); FeedbackMessageStoreHolder.ContextAccessor = httpContextAccessor; // check if a session is available var sessionStore = builder.ApplicationServices.GetService <ISessionStore>(); if (sessionStore == null) { FeedbackMessageStoreHolder.IsAvailableSession = false; } // init store FeedbackMessageStore.Initialize(FeedbackMessageStoreHolder.Instance); return(builder.UseMiddleware <FeedbackMessageMiddleware>()); }
/// <summary> /// Initializes message store. This method called from pre-application-start process automatically. /// </summary> public static void Initialize() { DynamicModuleUtility.RegisterModule(typeof(FeedbackMessageHttpModule)); FeedbackMessageStore.Initialize(FeedbackMessageStoreHolder.Instance); }
/// <summary> /// Serialize store as string. /// </summary> /// <param name="store"></param> /// <returns></returns> public string Serialize(FeedbackMessageStore store) { return(Serializer.Invoke(store)); }
/// <summary> /// Initializes message store. /// </summary> /// <param name="context"></param> public void OnPageHandlerExecuting(PageHandlerExecutingContext context) { FeedbackMessageStore.Load(); }
/// <summary> /// Finalizes message store. /// </summary> /// <param name="context"></param> public void OnPageHandlerExecuted(PageHandlerExecutedContext context) { FeedbackMessageStore.Flash(); }
/// <summary> /// Initializes message store. /// </summary> /// <param name="context"></param> public void OnActionExecuting(ActionExecutingContext context) { FeedbackMessageStore.Load(); }
/// <summary> /// Finalizes message store. /// </summary> /// <param name="context"></param> public void OnActionExecuted(ActionExecutedContext context) { FeedbackMessageStore.Flash(); }