// This method gets called by the runtime. Use this method to add services to the container. public IServiceProvider ConfigureServices(IServiceCollection services) { services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); //注册实体映射 ColumnMapper.SetMapper(); return(AutofacRegister.RegisterAutofac(services)); }
public static void Register(HttpConfiguration config) { // Web API configuration and services // Web API routes config.MapHttpAttributeRoutes(); config.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize; config.Formatters.JsonFormatter.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.None; config.Formatters.XmlFormatter.UseXmlSerializer = false; var builder = AutofacRegister.Setup(); builder.RegisterApiControllers(Assembly.GetExecutingAssembly()); var container = builder.Build(); config.DependencyResolver = new AutofacWebApiDependencyResolver(container); config.Count().Filter().OrderBy().Expand().Select().MaxTop(null); config.MapODataServiceRoute("odata", "odata", GetEdmModel()); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); }
protected void Application_Start() { _logHelper = LogHelperFactory.GetLogHelper <MvcApplication>(); if (AppContext.EFProfilerEnable) { //MiniProfilerEF6初始化,必须放在第一行 //因为要监控ef,所以要在ef初始化之前 MiniProfilerEF6.Initialize(); } //ASP.NET 路由操作处理所有请求(甚至包括与现有文件匹配的请求) RouteTable.Routes.RouteExistingFiles = true; //注册视图引擎 ViewEngines.Engines.Clear(); ViewEngines.Engines.Add(new RazorViewEngine()); ViewEngines.Engines.Add(new WebFormViewEngine()); //注册所有区域 AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); //ioc配置 AutofacRegister.RegisterAutofac(); EFWormUp(); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); AutofacRegister.RegisterAutoFac("WEBMVC", null); }
public static void Config(HttpConfiguration config, Assembly webapiAssembly, IEnumerable <Assembly> assemblies) { var builder = new ContainerBuilder(); builder.RegisterApiControllers(webapiAssembly); builder.RegisterAssemblyTypes(webapiAssembly).AsImplementedInterfaces(); builder.RegisterAssemblyTypes(assemblies.ToArray()).AsImplementedInterfaces(); AutofacRegister.Register(builder); var container = builder.Build(); config.DependencyResolver = new AutofacWebApiDependencyResolver(container); ObjectContainers.Current = container; }
private static void SetAutofacContainer() { var builder = new ContainerBuilder(); //builder.RegisterControllers(Assembly.GetExecutingAssembly()); builder.RegisterControllers(Assembly.GetExecutingAssembly()).PropertiesAutowired(); builder.RegisterApiControllers(Assembly.GetExecutingAssembly()).PropertiesAutowired(); AutofacRegister.AutofacRegisterTypes(builder); builder.RegisterFilterProvider(); IContainer container = builder.Build(); DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); System.Web.Http.GlobalConfiguration.Configuration.DependencyResolver = new AutofacWebApiDependencyResolver(container); GlobalConfiguration.Configuration.UseAutofacActivator(container); }
// This method gets called by the runtime. Use this method to add services to the container. public IServiceProvider ConfigureServices(IServiceCollection services) { services.AddDbContext <DefaultContext>(options => options.UseSqlServer(Configuration.GetConnectionString("Default"), b => b.MigrationsAssembly("ApplicationCore")) ); services.AddIdentity <User, IdentityRole>(options => { options.User.RequireUniqueEmail = true; }) .AddEntityFrameworkStores <DefaultContext>() .AddDefaultTokenProviders(); services.Configure <AppSettings>(Configuration.GetSection("AppSettings")); services.Configure <MongoDBSettings>(Configuration.GetSection("MongoDBSettings")); services.Configure <RootSubjectSettings>(Configuration.GetSection("RootSubjectSettings")); services.Configure <AuthSettings>(Configuration.GetSection("AuthSettings")); services.Configure <SubscribesSettings>(Configuration.GetSection("SubscribesSettings")); services.Configure <EcPaySettings>(Configuration.GetSection("EcPaySettings")); services.Configure <CloudStorageSettings>(Configuration.GetSection("CloudStorageSettings")); services.Configure <AdminSettings>(Configuration.GetSection("AdminSettings")); services.AddHangfire(x => x.UseSqlServerStorage(Configuration.GetConnectionString("Default"))); services.AddHangfireServer(); var signingKey = new SymmetricSecurityKey(Encoding.ASCII.GetBytes(Configuration["AuthSettings:SecurityKey"])); string issuer = Configuration["AppSettings:Name"]; string audience = ClientUrl; string securityKey = Configuration["AuthSettings:SecurityKey"]; int tokenValidHours = Convert.ToInt32(Configuration["AuthSettings:TokenValidHours"]); services.AddJwtBearer(tokenValidHours, issuer, audience, securityKey); services.AddSwagger("PosterExamStarter", "v1"); services.AddDtoMapper(); services.AddAuthorization(options => { options.AddPolicy("Subscriber", policy => policy.Requirements.Add(new HasPermissionRequirement(Permissions.Subscriber))); options.AddPolicy("Admin", policy => policy.Requirements.Add(new HasPermissionRequirement(Permissions.Admin))); }); services.AddCors(options => { options.AddPolicy("Api", builder => { builder.WithOrigins(ClientUrl) .AllowAnyHeader() .AllowAnyMethod().AllowCredentials(); }); options.AddPolicy("Admin", builder => { builder.WithOrigins(AdminUrl) .AllowAnyHeader() .AllowAnyMethod(); }); options.AddPolicy("Global", builder => { builder.WithOrigins(ClientUrl, AdminUrl) .AllowAnyHeader() .AllowAnyMethod(); }); options.AddPolicy("EcPay", builder => { builder.WithOrigins(Configuration["EcPaySettings:Url"]) .AllowAnyHeader() .AllowAnyMethod(); }); }); services.AddControllers(); services.AddSignalR(); services.AddHttpClient(Consts.Google, c => { c.BaseAddress = new Uri("https://www.google.com"); }); services.AddSingleton <IHubConnectionManager, HubConnectionManager>(); services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>(); services.AddScoped <Web.Services.IThirdPartyPayService, Web.Services.EcPayService>(); services.AddScoped <Web.Services.ISubscribesService, Web.Services.SubscribesService>(); return(AutofacRegister.Register(services)); }
public UnitTestAutofac() { AutofacRegister.RegisterAutoFac(); }