Elmah.HttpTextAsyncHandler.Create C# (CSharp) Méthode

Create() public static méthode

public static Create ( Func handler ) : Func,IEnumerable>
handler Func
Résultat Func,IEnumerable>
        public static Func<HttpContextBase, Func<AsyncCallback>, IEnumerable<IAsyncResult>> Create(Func<HttpContextBase, Func<AsyncCallback>, IEnumerable<AsyncResultOr<string>>> handler)
        {
            return (context, getAsyncCallback) => ProcessRequest(context, getAsyncCallback, handler);
        }

Usage Example

        private static IHttpHandler FindHandler(string name)
        {
            Debug.Assert(name != null);

            switch (name)
            {
            case "detail":
                return(CreateTemplateHandler <ErrorDetailPage>());

            case "html":
                return(new ErrorHtmlPage());

            case "delete":
                return(new DelegatingHttpHandler(ErrorDeletionHandler.ProcessRequest));

            case "truncate":
                return(new DelegatingHttpHandler(ErrorTruncationHandler.ProcessRequest));

            case "xml":
                return(new DelegatingHttpHandler(ErrorXmlHandler.ProcessRequest));

            case "json":
                return(new DelegatingHttpHandler(ErrorJsonHandler.ProcessRequest));

            case "rss":
                return(new DelegatingHttpHandler(ErrorRssHandler.ProcessRequest));

            case "digestrss":
                return(new DelegatingHttpHandler(ErrorDigestRssHandler.ProcessRequest));

            case "download":
                    #if NET_3_5 || NET_4_0
                return(new HttpAsyncHandler((context, getAsyncCallback) => HttpTextAsyncHandler.Create(ErrorLogDownloadHandler.ProcessRequest)(context, getAsyncCallback)));
                    #else
                return(new DelegatingHttpTaskAsyncHandler(ErrorLogDownloadHandler.ProcessRequestAsync));
                    #endif
            case "stylesheet":
                return(new DelegatingHttpHandler(ManifestResourceHandler.Create(StyleSheetHelper.StyleSheetResourceNames, "text/css", Encoding.GetEncoding("Windows-1252"), true)));

            case "test":
                throw new TestException();

            case "about":
                return(CreateTemplateHandler <AboutPage>());

            default:
                return(name.Length == 0 ? CreateTemplateHandler <ErrorLogPage>() : null);
            }
        }
HttpTextAsyncHandler