protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); var container = CompositionRoot.Configure(); MainWindow mainWindow = new MainWindow(); var mainWindowViewModel = container.Resolve <MainWindowViewModel>(); mainWindow.DataContext = mainWindowViewModel; mainWindow.Show(); }
public static void Perform() { var container = CompositionRoot.Configure(); var factory = container.Resolve <IPaymentGatewayFactory>(); IPaymentGateWay gateway = factory.Create(Gateways.Swift); gateway.Invoke(); gateway = factory.Create(Gateways.WellsFargo); gateway.Invoke(); gateway = factory.Create(Gateways.ProtocolBase); gateway.Invoke(); Console.WriteLine(""); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddMvc(options => { options.Filters.Add(new ModelValidationFilter()); }); var conn = Configuration.GetValue <string>("mongoConnectionString"); var sqlConn = Configuration.GetValue <string>("sqlConnectionString"); var businessLogicCompositionRoot = CompositionRoot.Configure(); services.AddSingleton(businessLogicCompositionRoot.UserFacade); IUserRepository mongoUserRepo = new MongoUserRepository(conn); IUserRepository sqlUserRepo = new SqlUserRepository(sqlConn); services.AddSingleton(sqlUserRepo); services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Info { Title = "UserApi", Version = "v1" }); }); }