private static void Main(string[] args) { WindsorContainerWrapper installerWrapper = new WindsorContainerWrapper(new WindsorContainer(), new Registration(), new BackendServices()); installerWrapper.RegistrationLogger = new ConsoleLogger(); installerWrapper.Install(); IWindsorContainer container = installerWrapper.WindsorContainer; IServiceProvider <string, BusinessResponse> serviceProvider = container.Resolve <IServiceProvider <string, BusinessResponse> >(); string serviceData = @"{ ""datafield"" : ""Some data""}"; BusinessResponse response = serviceProvider.PerformService(serviceData); Console.WriteLine($"{response.Success}"); foreach (string responseMessage in response.Messages) { Console.WriteLine($"{responseMessage}"); } Console.Write("Implementation: "); Implementation = Console.ReadLine(); serviceProvider = container.Resolve <IServiceProvider <string, BusinessResponse> >(); response = serviceProvider.PerformService(serviceData); Console.WriteLine($"{response.Success}"); foreach (string responseMessage in response.Messages) { Console.WriteLine($"{responseMessage}"); } Console.ReadKey(); }
// This method gets called by the runtime. Use this method to add services to the container. public IServiceProvider ConfigureServices(IServiceCollection services) { services.Configure <CookiePolicyOptions>(options => { // This lambda determines whether user consent for non-essential cookies is needed for a given request. options.CheckConsentNeeded = context => true; options.MinimumSameSitePolicy = SameSiteMode.None; }); services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1).AddControllersAsServices(); WindsorContainerWrapper wrapper = new WindsorContainerWrapper(new WindsorContainer(), new WebAppRegistration()); wrapper.Install(); return(WindsorRegistrationHelper.CreateServiceProvider(wrapper.WindsorContainer, services)); }
private static void Main(string[] args) { WindsorContainerWrapper containerWrapper = new WindsorContainerWrapper(new WindsorContainer(), new MainAssemblyProvider(), new PluginRegistration()); containerWrapper.RegistrationLogger = new ConsoleLogger(); containerWrapper.Install(); IWindsorContainer container = containerWrapper.WindsorContainer; do { Console.Write("Customer Key: "); Console.ReadLine(); //ContextUtilities.ContextValidationString = Console.ReadLine(); ICustomerInformation customerInformation = container.Resolve <ICustomerInformation>(); IConsoleWriter consoleWriter = container.Resolve <IConsoleWriter>(); consoleWriter.WriteCustomerInformation(customerInformation); } while (Console.ReadLine() != "exit".ToLower()); }
/// <summary> /// Processes the queue message. /// </summary> /// <param name="asinList">The asin list.</param> public static void ProcessQueueMessage([QueueTrigger("amazonqueue")] IList <string> asinList) { Args.IsNotNull(() => asinList); var itemsQuery = EcsLookup.GetItemsFromAsinList(asinList); var items = itemsQuery.FirstOrDefault(); using (var windsorContainer = new WindsorContainer()) { var containerWrapper = new WindsorContainerWrapper(windsorContainer); containerWrapper.RegisterAllInstances(); if (items != null) { var amazonWishListCollection = containerWrapper.Resolve <IBusinessObjectCollection <AmazonWishList> >(); var wishListEditCollection = amazonWishListCollection.Query(awl => asinList.Contains(awl.Identifier)); foreach (var item in items.Item) { var wishListEdit = wishListEditCollection .Where(we => we.Identifier == item.ASIN) .FirstOrDefault(); UploadImageToAzure(item, wishListEdit); wishListEdit.Identifier = item.ASIN; wishListEdit.Name = item.ItemAttributes.Title; wishListEdit.ImageUrl = item.MediumImage.URL.ToUri(); wishListEdit.Category = item.ItemAttributes.Binding; wishListEdit.SiteUrl = item.DetailPageURL.ToUri(); wishListEdit.Description = item.ItemAttributes.Feature.ExplodeList(); wishListEdit.Price = item.GetPrice(); wishListEdit.SiteName = "Amazon"; wishListEdit.SiteUrl = new Uri("http://www.amazon.com/"); } wishListEditCollection.Save(); } } }