void Application_Start(object sender, EventArgs e) { // Code that runs on application startup AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); // JS a CSS bundly BundleConfig.RegisterBundles(BundleTable.Bundles); RouteConfig.RegisterRoutes(RouteTable.Routes); // SimpleWebInjector var container = SimpleInjectorContainer.Build(GlobalConfiguration.Configuration); DependencyResolver.SetResolver(new SimpleInjectorDependencyResolver(container)); Log.Info("App start"); }
public static void Register(HttpConfiguration config) { // Web API configuration and services config.SuppressDefaultHostAuthentication(); config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType)); // Web API routes config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}/{id}", defaults: new { id = RouteParameter.Optional } ); config.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(SimpleInjectorContainer.RegisterServices()); }
private static void ConfigureIoc() { var ioc = new SimpleInjectorContainer(); // Need to explicitly specify default scope ioc.InternalContainer.Options.DefaultScopedLifestyle = new WebRequestLifestyle(); ioc .Register(new IocDataAccessModule()) .Register(new IocServicesModule()) .Register(new IocUiModule()); DependencyResolver.SetResolver(new SimpleInjectorDependencyResolver(ioc.InternalContainer)); // Need for Simple Injector invoking on Web Api controller constructor call GlobalConfiguration.Configuration.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(ioc.InternalContainer); }
public void Configuration(IAppBuilder app) { SimpleInjectorContainer.Initializer(); //AutoMapperInitializer.Initialize(); HttpConfiguration config = new HttpConfiguration() { DependencyResolver = new SimpleInjectorWebApiDependencyResolver (SimpleInjectorContainer.ContainerInstance) }; WebApiConfig.Register(config); OAuthConfig.ConfigureOAuth(app); config.MessageHandlers.Add(new CustomLogHandler()); app.UseWebApi(config); }
public void Configuration(IAppBuilder app) { SimpleInjectorContainer.Initialize(); HttpConfiguration config = new HttpConfiguration(); config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute(name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional }); EnableOdata(config); ConfigureCors(app); ActiveAccessTokens(app); app.UseWebApi(config); AutoMapperConfig.Initialize(); config.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(SimpleInjectorContainer.container); }
public static void Register(HttpConfiguration config) { // Serviços e configuração da API da Web // Rotas da API da Web config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); DependencyResolver.SetResolver(new SimpleInjectorDependencyResolver( SimpleInjectorContainer.RegisterServices() )); }
public void Configuration(IAppBuilder appBuilder) { appBuilder.UseCors(CorsOptions.AllowAll); var config = new HttpConfiguration(); config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); config.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(SimpleInjectorContainer.RegisterServices()); appBuilder.UseWebApi(config); }
public static ChocolateyLicense validate_license() { var license = LicenseValidation.validate(); if (license.is_licensed_version()) { try { var licensedAssembly = AssemblyResolution.resolve_or_load_assembly(ApplicationParameters.LicensedChocolateyAssemblySimpleName, ApplicationParameters.OfficialChocolateyPublicKey, ApplicationParameters.LicensedAssemblyLocation); if (licensedAssembly == null) { throw new ApplicationException("Unable to load licensed assembly."); } license.AssemblyLoaded = true; license.Assembly = licensedAssembly; license.Version = VersionInformation.get_current_informational_version(licensedAssembly); Type licensedComponent = licensedAssembly.GetType(ApplicationParameters.LicensedComponentRegistry, throwOnError: false, ignoreCase: true); SimpleInjectorContainer.add_component_registry_class(licensedComponent); } catch (Exception ex) { "chocolatey".Log().Error( @"Error when attempting to load chocolatey licensed assembly. Ensure that chocolatey.licensed.dll exists at '{0}'. The error message itself may be helpful:{1} {2}".format_with( ApplicationParameters.LicensedAssemblyLocation, Environment.NewLine, ex.Message )); "chocolatey".Log().Warn(ChocolateyLoggers.Important, @" Install the Chocolatey Licensed Extension package with `choco install chocolatey.extension` to remove this license warning. TRIALS: If you have a trial license, you cannot use the above command as is and be successful. You need to download nupkgs from the links in the trial email as your license will not be registered on the licensed repository. Please reference https://chocolatey.org/docs/installation-licensed#how-do-i-install-the-trial-edition for specific instructions."); } } return(license); }
public void InsertNinjaWithoutClan() { //inicializa a injeção de dependencia SimpleInjectorContainer.RegisterServices(); INinjaRepository ninjaRepository = new NinjaRepository(); Ninja ninja = new Ninja { NinjaName = "Bolacha", DateCreated = DateTime.Now, DateModified = DateTime.Now }; if (!ninjaRepository.FindBy(n => n.NinjaName == ninja.NinjaName).Any()) { ninjaRepository.Add(ninja); ninjaRepository.Save(); } }
static void Main(string[] args) { // registra o contaner de IoC var iocInjector = new SimpleInjectorContainer(); //registra o auto map var mapperConfiguration = AutoMapperConfig.RegisterMappings(); IMapper mapper = mapperConfiguration.CreateMapper(); string uri = ConfigurationManager.AppSettings["Uri"]; var servicoRssFeed = iocInjector.container.GetInstance <IServicoRssFeed>(); var rssFeedViewModel = servicoRssFeed.ProcessarRssFeed(uri, mapper); System.Console.WriteLine($"Dados do blog: { rssFeedViewModel.Title }"); System.Console.WriteLine($"Ultima alteração: { rssFeedViewModel.LastBuildDate }"); Console.WriteLine(); foreach (var item in rssFeedViewModel.Items) { System.Console.WriteLine($"Título do blog: { item.Title }"); System.Console.WriteLine($"Criado por: { item.Creator }"); System.Console.WriteLine($"Publicado em: { item.PubDate }"); Console.WriteLine(); Console.WriteLine("As 10 dez principais palavras abordadas nesses tópicos são:"); var index = 1; foreach (var palavra in item.Palavras) { Console.WriteLine($"{ index }ª) { palavra.Palavra.ToUpper() }, o número de vezes que ela apareceu foi: { palavra.TotalVezesUsuada }!"); index++; } Console.WriteLine($"Total de palavras usuadas no blog { item.TotalPalavrasBlog } palavras"); Console.WriteLine(); } Console.ReadKey(); }
static void Main(string[] args) { //Resolvendo as dependências SimpleInjectorContainer.RegisterServices(); //Preparando o envento var idCliente = 10; var idObjeto = 574; var encomenda = new Encomenda(idCliente, idObjeto); var fazerUmaEncomenda = new EncomendaRealizada( encomenda.ClienteId, encomenda.ObjetoId, encomenda.DataEntregaPrevista ); //Realizando o evento DomainEvents.Raise(fazerUmaEncomenda); Console.ReadKey(); }
public void InserNinjaClan() { SimpleInjectorContainer.RegisterServices(); INinjaClanRepository ninjaClanRepository = new NinjaClanRepository(); NinjaClan ninjaClan = new NinjaClan { DateModified = DateTime.Now, DateCreated = DateTime.Now, ClanName = "Camargo's", FoundationDate = DateTime.Today }; if (!ninjaClanRepository.FindBy(clan => clan.ClanName == ninjaClan.ClanName).Any()) { ninjaClanRepository.Add(ninjaClan); ninjaClanRepository.Save(); } Console.WriteLine(ninjaClan.Id); }
/// <summary> /// Integrates SimpleInjector /// </summary> /// <param name="services">Interface <see cref="IServiceCollection"/></param> private static void IntegrateSimpleInjector(IServiceCollection services) { var ioc = new SimpleInjectorContainer(); ioc.InternalContainer.Options.DefaultScopedLifestyle = new AsyncScopedLifestyle(); ioc .Register(new IocDataAccessModule()) .Register(new IocServicesModule()) .Register(new IocCoreUIModule()); ioc.InternalContainer.Verify(); GlobalConfiguration.Configuration.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(ioc.InternalContainer); services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>(); services.AddSingleton <IControllerActivator>( new SimpleInjectorControllerActivator(ioc.InternalContainer)); services.EnableSimpleInjectorCrossWiring(ioc.InternalContainer); services.UseSimpleInjectorAspNetRequestScoping(ioc.InternalContainer); }
public GamePlatformController() { var service = SimpleInjectorContainer.GetInstance <IGamePlatformRepository>(); _repo = (IGamePlatformRepository)service; }
private static void InitializeContainer(Container container) { SimpleInjectorContainer.Initialize(container, Lifestyle.Singleton); }
public UserController() { var service = SimpleInjectorContainer.GetInstance <IUserRepository>(); _repo = (IUserRepository)service; }
protected void Application_Start(object sender, EventArgs e) { SimpleInjectorContainer.Initialize(); }
// ReSharper disable InconsistentNaming private static void Main(string[] args) // ReSharper restore InconsistentNaming { try { string loggingLocation = ApplicationParameters.LoggingLocation; //no file system at this point if (!Directory.Exists(loggingLocation)) { Directory.CreateDirectory(loggingLocation); } Log4NetAppenderConfiguration.configure(loggingLocation); Bootstrap.initialize(); Bootstrap.startup(); var container = SimpleInjectorContainer.initialize(); var config = container.GetInstance <ChocolateyConfiguration>(); var fileSystem = container.GetInstance <IFileSystem>(); ConfigurationBuilder.set_up_configuration(args, config, fileSystem, container.GetInstance <IXmlService>()); Config.initialize_with(config); if (config.RegularOuptut) { "logfile".Log().Info(() => "".PadRight(60, '=')); #if DEBUG "chocolatey".Log().Info(ChocolateyLoggers.Important, () => "{0} v{1} (DEBUG BUILD)".format_with(ApplicationParameters.Name, config.Information.ChocolateyVersion)); #else "chocolatey".Log().Info(ChocolateyLoggers.Important, () => "{0} v{1}".format_with(ApplicationParameters.Name, config.Information.ChocolateyVersion)); #endif } remove_old_chocolatey_exe(fileSystem); if (config.HelpRequested) { pause_execution_if_debug(); Environment.Exit(-1); } Log4NetAppenderConfiguration.set_verbose_logger_when_verbose(config.Verbose, ChocolateyLoggers.Verbose.to_string()); Log4NetAppenderConfiguration.set_logging_level_debug_when_debug(config.Debug); "chocolatey".Log().Debug(() => "{0} is running on {1} v {2}".format_with(ApplicationParameters.Name, config.Information.PlatformType, config.Information.PlatformVersion.to_string())); //"chocolatey".Log().Debug(() => "Command Line: {0}".format_with(Environment.CommandLine)); LicenseValidation.validate(fileSystem); //refactor - thank goodness this is temporary, cuz manifest resource streams are dumb IList <string> folders = new List <string> { "helpers", "functions", "redirects", "tools" }; AssemblyFileExtractor.extract_all_resources_to_relative_directory(fileSystem, Assembly.GetAssembly(typeof(ChocolateyResourcesAssembly)), ApplicationParameters.InstallLocation, folders, ApplicationParameters.ChocolateyFileResources); var application = new ConsoleApplication(); application.run(args, config, container); } catch (Exception ex) { var debug = false; // no access to the good stuff here, need to go a bit primitive in parsing args foreach (var arg in args.or_empty_list_if_null()) { if (arg.Contains("debug") || arg.is_equal_to("-d") || arg.is_equal_to("/d")) { debug = true; break; } } if (debug) { "chocolatey".Log().Error(() => "{0} had an error occur:{1}{2}".format_with( ApplicationParameters.Name, Environment.NewLine, ex.ToString())); } else { "chocolatey".Log().Error(ChocolateyLoggers.Important, () => "{0}".format_with(ex.Message)); } Environment.ExitCode = 1; } finally { "chocolatey".Log().Debug(() => "Exiting with {0}".format_with(Environment.ExitCode)); #if DEBUG "chocolatey".Log().Info(() => "Exiting with {0}".format_with(Environment.ExitCode)); #endif pause_execution_if_debug(); Bootstrap.shutdown(); Environment.Exit(Environment.ExitCode); } }
protected void Application_Start() { GlobalConfiguration.Configure(config => config.Register(new SimpleInjectorWebApiDependencyResolver(SimpleInjectorContainer.Build()))); }
protected void Application_Start() { GlobalConfiguration.Configure(WebApiConfig.Register); AutoMapperConfig.Initialize(); SimpleInjectorContainer.Initialize(); }
private static void InitializeContainer(Container container) { SimpleInjectorContainer.Register(container); }
public static ChocolateyLicense validate_license() { var license = LicenseValidation.validate(); if (license.is_licensed_version()) { try { #if FORCE_CHOCOLATEY_OFFICIAL_KEY var chocolateyPublicKey = ApplicationParameters.OfficialChocolateyPublicKey; #else var chocolateyPublicKey = ApplicationParameters.UnofficialChocolateyPublicKey; #endif var licensedAssembly = AssemblyResolution.resolve_or_load_assembly(ApplicationParameters.LicensedChocolateyAssemblySimpleName, chocolateyPublicKey, ApplicationParameters.LicensedAssemblyLocation); if (licensedAssembly == null) { throw new ApplicationException("Unable to load licensed assembly."); } license.AssemblyLoaded = true; license.Assembly = licensedAssembly; license.Version = VersionInformation.get_current_informational_version(licensedAssembly); // The licensed assembly is installed, check its supported Chocolatey versions and/or the assembly // version so we can attempt to determine whether it's compatible with this version of Chocolatey. var minimumChocolateyVersionString = VersionInformation.get_minimum_chocolatey_version(licensedAssembly); "chocolatey".Log().Debug("Minimum Chocolatey Version: '{0}'".format_with(minimumChocolateyVersionString)); var currentChocolateyVersionString = VersionInformation.get_current_assembly_version(); "chocolatey".Log().Debug("Current Chocolatey Version: '{0}'".format_with(currentChocolateyVersionString)); var currentChocolateyLicensedVersionString = VersionInformation.get_current_assembly_version(licensedAssembly); "chocolatey".Log().Debug("Current Chocolatey Licensed Version: '{0}'".format_with(currentChocolateyLicensedVersionString)); var minimumChocolateyVersion = new Version(minimumChocolateyVersionString); var currentChocolateyVersion = new Version(currentChocolateyVersionString); var currentChocolateyLicensedVersion = new Version(currentChocolateyLicensedVersionString); license.IsCompatible = true; if (currentChocolateyVersion < minimumChocolateyVersion || (minimumChocolateyVersion == Version.Parse("1.0.0") && currentChocolateyLicensedVersion.Major < 4)) { license.IsCompatible = false; } Type licensedComponent = licensedAssembly.GetType(ApplicationParameters.LicensedComponentRegistry, throwOnError: false, ignoreCase: true); SimpleInjectorContainer.add_component_registry_class(licensedComponent); } catch (Exception ex) { "chocolatey".Log().Error( @"A valid Chocolatey license was found, but the chocolatey.licensed.dll assembly could not be loaded: {0} Ensure that the chocolatey.licensed.dll exists at the following path: '{1}'".format_with(ex.Message, ApplicationParameters.LicensedAssemblyLocation)); "chocolatey".Log().Warn( ChocolateyLoggers.Important, @"To resolve this, install the Chocolatey Licensed Extension package with `choco install chocolatey.extension`"); } } return(license); }
protected void Application_Start(object sender, EventArgs e) { GlobalConfiguration.Configure(WebApiConfig.Registrar); SimpleInjectorContainer.Initialize(); InicializadorAutoMapper.Inicializar(); }
// ReSharper disable InconsistentNaming private static void Main(string[] args) // ReSharper restore InconsistentNaming { try { string loggingLocation = ApplicationParameters.LoggingLocation; //no file system at this point if (!Directory.Exists(loggingLocation)) { Directory.CreateDirectory(loggingLocation); } Log4NetAppenderConfiguration.configure(loggingLocation); Bootstrap.initialize(); Bootstrap.startup(); var license = LicenseValidation.validate(); if (license.is_licensed_version()) { try { var licensedAssembly = Assembly.LoadFile(ApplicationParameters.LicensedAssemblyLocation); license.AssemblyLoaded = true; license.Assembly = licensedAssembly; license.Version = VersionInformation.get_current_informational_version(licensedAssembly); Type licensedComponent = licensedAssembly.GetType(ApplicationParameters.LicensedComponentRegistry, throwOnError: false, ignoreCase: true); SimpleInjectorContainer.add_component_registry_class(licensedComponent); } catch (Exception ex) { "chocolatey".Log().Error( @"Error when attempting to load chocolatey licensed assembly. Ensure that chocolatey.licensed.dll exists at '{0}'. The error message itself may be helpful as well:{1} {2}".format_with( ApplicationParameters.LicensedAssemblyLocation, Environment.NewLine, ex.Message )); } } var container = SimpleInjectorContainer.Container; var config = container.GetInstance <ChocolateyConfiguration>(); var fileSystem = container.GetInstance <IFileSystem>(); var warnings = new List <string>(); ConfigurationBuilder.set_up_configuration( args, config, container, license, warning => { warnings.Add(warning); } ); Config.initialize_with(config); report_version_and_exit_if_requested(args, config); trap_exit_scenarios(config); if (config.RegularOutput) { "logfile".Log().Info(() => "".PadRight(60, '=')); #if DEBUG "chocolatey".Log().Info(ChocolateyLoggers.Important, () => "{0} v{1}{2} (DEBUG BUILD)".format_with(ApplicationParameters.Name, config.Information.ChocolateyProductVersion, license.is_licensed_version() ? " {0}".format_with(license.LicenseType) : string.Empty)); #else if (config.Information.ChocolateyVersion == config.Information.ChocolateyProductVersion && args.Any()) { "logfile".Log().Info(() => "{0} v{1}{2}".format_with(ApplicationParameters.Name, config.Information.ChocolateyProductVersion, license.is_licensed_version() ? " {0}".format_with(license.LicenseType) : string.Empty)); } else { "chocolatey".Log().Info(ChocolateyLoggers.Important, () => "{0} v{1}{2}".format_with(ApplicationParameters.Name, config.Information.ChocolateyProductVersion, license.is_licensed_version() ? " {0}".format_with(license.LicenseType) : string.Empty)); } #endif } if (warnings.Count != 0 && config.RegularOutput) { foreach (var warning in warnings.or_empty_list_if_null()) { "chocolatey".Log().Warn(ChocolateyLoggers.Important, warning); } } if (config.HelpRequested) { pause_execution_if_debug(); Environment.Exit(-1); } Log4NetAppenderConfiguration.set_logging_level_debug_when_debug(config.Debug, excludeLoggerName: "{0}LoggingColoredConsoleAppender".format_with(ChocolateyLoggers.Verbose.to_string())); Log4NetAppenderConfiguration.set_verbose_logger_when_verbose(config.Verbose, config.Debug, "{0}LoggingColoredConsoleAppender".format_with(ChocolateyLoggers.Verbose.to_string())); "chocolatey".Log().Debug(() => "{0} is running on {1} v {2}".format_with(ApplicationParameters.Name, config.Information.PlatformType, config.Information.PlatformVersion.to_string())); //"chocolatey".Log().Debug(() => "Command Line: {0}".format_with(Environment.CommandLine)); remove_old_chocolatey_exe(fileSystem); //refactor - thank goodness this is temporary, cuz manifest resource streams are dumb IList <string> folders = new List <string> { "helpers", "functions", "redirects", "tools" }; AssemblyFileExtractor.extract_all_resources_to_relative_directory(fileSystem, Assembly.GetAssembly(typeof(ChocolateyResourcesAssembly)), ApplicationParameters.InstallLocation, folders, ApplicationParameters.ChocolateyFileResources); var application = new ConsoleApplication(); application.run(args, config, container); } catch (Exception ex) { var debug = false; // no access to the good stuff here, need to go a bit primitive in parsing args foreach (var arg in args.or_empty_list_if_null()) { if (arg.Contains("debug") || arg.is_equal_to("-d") || arg.is_equal_to("/d")) { debug = true; break; } } if (debug) { "chocolatey".Log().Error(() => "{0} had an error occur:{1}{2}".format_with( ApplicationParameters.Name, Environment.NewLine, ex.ToString())); } else { "chocolatey".Log().Error(ChocolateyLoggers.Important, () => "{0}".format_with(ex.Message)); } Environment.ExitCode = 1; } finally { "chocolatey".Log().Debug(() => "Exiting with {0}".format_with(Environment.ExitCode)); #if DEBUG "chocolatey".Log().Info(() => "Exiting with {0}".format_with(Environment.ExitCode)); #endif pause_execution_if_debug(); Bootstrap.shutdown(); Environment.Exit(Environment.ExitCode); } }
protected void Application_Start() { DependencyResolver.SetResolver(SimpleInjectorContainer.RegisterServices()); AreaRegistration.RegisterAllAreas(); RouteConfig.RegisterRoutes(RouteTable.Routes); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { var appSettings = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json"); IConfigurationRoot Configuration = appSettings.Build(); var builder = new DbContextOptionsBuilder <CestechContext>(); var connectionString = Configuration["ConnectionStrings:DefaultConnection"]; builder.UseMySql(connectionString); services.AddMvc(); services.AddDbContext <CestechContext>(x => x.UseMySql(connectionString)); container = SimpleInjectorContainer.Register(builder.Options); IntegrateSimpleInjector(services); services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) .AddJwtBearer(option => { option.TokenValidationParameters = new TokenValidationParameters { ValidateIssuer = true, ValidateAudience = true, ValidateLifetime = true, ValidateIssuerSigningKey = true, ValidIssuer = "Securiry.Bearer", ValidAudience = "Securiry.Bearer", IssuerSigningKey = ProviderJWT.JWTSecurityKey.Create("Secret_Key-Cestech") }; option.Events = new JwtBearerEvents { OnAuthenticationFailed = context => { Console.WriteLine("OnAuthenticationFailed: " + context.Exception.Message); return(Task.CompletedTask); }, OnTokenValidated = context => { Console.WriteLine("OnTokenValidated: " + context.SecurityToken); return(Task.CompletedTask); } }; }); services.AddAuthorization(options => { options.AddPolicy("UsuarioApi", policy => policy.RequireClaim("UsuarioAPI")); }); services.AddMvc(); // Configurando o serviço de documentação do Swagger services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Info { Title = "Cestech", Version = "v1", Description = "Api base Cestech", Contact = new Contact { Name = "Wodson Luiz", Url = "https://github.com/wodsonluiz" } }); string caminhoAplicacao = PlatformServices.Default.Application.ApplicationBasePath; string nomeAplicacao = PlatformServices.Default.Application.ApplicationName; string caminhoXmlDoc = Path.Combine(caminhoAplicacao, $"{nomeAplicacao}.xml"); c.IncludeXmlComments(caminhoXmlDoc); }); services.AddCors(o => o.AddPolicy("CorsPolicy", X => { X.AllowAnyOrigin() .AllowAnyMethod() .AllowAnyHeader(); })); }
/// <summary> ///Método de execução de rotinas durante a inicialização da API /// </summary> protected void Application_Start(object sender, EventArgs e) { // Realiza as configurações gerais da API GlobalConfiguration.Configure(WebApiConfig.Register); SimpleInjectorContainer.Initialize(); }