mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 03:25:23 +08:00

Changing component layering to allow more efficient dependencies Marking several interfaces and services obsolete to produce warnings Changing ITheme to FeatureDescriptor as a first step --HG-- branch : perf extra : rebase_source : 905b69eb1cc6ed05750908e41a2d0846dde22001
51 lines
1.5 KiB
C#
51 lines
1.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Reflection;
|
|
using System.Web;
|
|
using System.Web.Hosting;
|
|
using System.Web.Mvc;
|
|
using System.Web.Routing;
|
|
using Autofac;
|
|
using Orchard.Environment;
|
|
using Orchard.Environment.Extensions.Loaders;
|
|
|
|
namespace Orchard.Web {
|
|
// Note: For instructions on enabling IIS6 or IIS7 classic mode,
|
|
// visit http://go.microsoft.com/?LinkId=9394801
|
|
|
|
public class MvcApplication : HttpApplication {
|
|
private static IOrchardHost _host;
|
|
|
|
public static void RegisterRoutes(RouteCollection routes) {
|
|
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
|
|
}
|
|
|
|
protected void Application_Start() {
|
|
RegisterRoutes(RouteTable.Routes);
|
|
|
|
_host = OrchardStarter.CreateHost(MvcSingletons);
|
|
_host.Initialize();
|
|
}
|
|
|
|
protected void Application_BeginRequest() {
|
|
Context.Items["originalHttpContext"] = Context;
|
|
|
|
_host.BeginRequest();
|
|
}
|
|
|
|
protected void Application_EndRequest() {
|
|
_host.EndRequest();
|
|
GC.Collect();
|
|
}
|
|
|
|
static void MvcSingletons(ContainerBuilder builder) {
|
|
builder.Register(ctx => RouteTable.Routes).SingleInstance();
|
|
builder.Register(ctx => ModelBinders.Binders).SingleInstance();
|
|
builder.Register(ctx => ViewEngines.Engines).SingleInstance();
|
|
}
|
|
|
|
}
|
|
}
|