Exemple #1
0
        // helpers to raise event on STA threads in ASPCOMAP mode

        internal static void RaiseAspCompatEvent(HttpContext context, HttpApplication app, String sessionId, EventHandler eventHandler, Object source, EventArgs eventArgs)
        {
            AspCompatApplicationStep step = new AspCompatApplicationStep(context, app, sessionId, eventHandler, source, eventArgs);
            IAsyncResult             ar   = step.BeginAspCompatExecution(null, null);

            // wait until done
            if (!ar.IsCompleted)
            {
                WaitHandle h = ar.AsyncWaitHandle;

                if (h != null)
                {
                    h.WaitOne();
                }
                else
                {
                    while (!ar.IsCompleted)
                    {
                        Thread.Sleep(1);
                    }
                }
            }

            step.EndAspCompatExecution(ar);
        }
 private void MarkCallContext(AspCompatApplicationStep mark)
 {
     CallContext.SetData("AspCompat", mark);
 }
 private void MarkCallContext(AspCompatApplicationStep mark) {
      CallContext.SetData("AspCompat", mark);
 }
    // helpers to raise event on STA threads in ASPCOMAP mode

    internal static void RaiseAspCompatEvent(HttpContext context, HttpApplication app, String sessionId, EventHandler eventHandler, Object source, EventArgs eventArgs) {
        AspCompatApplicationStep step = new AspCompatApplicationStep(context, app, sessionId, eventHandler, source, eventArgs);
        IAsyncResult ar = step.BeginAspCompatExecution(null, null);

        // wait until done
        if (!ar.IsCompleted) {
            WaitHandle h = ar.AsyncWaitHandle;

            if (h != null) {
                h.WaitOne();
            }
            else {
                while (!ar.IsCompleted)
                    Thread.Sleep(1);
            }
        }

        step.EndAspCompatExecution(ar);
    }
 protected IAsyncResult AspCompatBeginProcessRequest(HttpContext context, AsyncCallback cb, object extraData)
 {
     this.SetIntrinsics(context);
     this._aspCompatStep = new AspCompatApplicationStep(context, new AspCompatCallback(this.ProcessRequest));
     return this._aspCompatStep.BeginAspCompatExecution(cb, extraData);
 }