当前位置: 首页>>代码示例>>C#>>正文


C# Container.RegisterWebApiRequest方法代码示例

本文整理汇总了C#中SimpleInjector.Container.RegisterWebApiRequest方法的典型用法代码示例。如果您正苦于以下问题:C# Container.RegisterWebApiRequest方法的具体用法?C# Container.RegisterWebApiRequest怎么用?C# Container.RegisterWebApiRequest使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SimpleInjector.Container的用法示例。


在下文中一共展示了Container.RegisterWebApiRequest方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: RegisterServices

        public void RegisterServices(Container container)
        {
            //Config
            container.RegisterWebApiRequest<IDbSettings>(() => new DbSettings(ConnectionName));

            //DbContext
            container.RegisterWebApiRequest<ISmsContext>(() => new SmsContext(container.GetInstance<IDbSettings>()));

            //Services
            container.Register<IExternalSmsService, ExternalSmsService>();
            container.Register<IInternalSmsService, InternalSmsService>();

            //Data
            container.Register<ISmsRepository, SmsRepository>();

            //Reference Generator
            container.Register<IReferenceGenerator, CryptographicReferenceGenerator>();

            //Error Engine
            container.Register<IErrorEngine, TwilioErrorEngine>();

            //Config
            container.Register<ITwilioSettings>(() => (TwilioSettings)(dynamic)ConfigurationManager.GetSection("twilioSettings"));
            container.Register<ITwilioNumbers>(() => (TwilioNumbersSettings)(dynamic)ConfigurationManager.GetSection("twilioNumbers"));
            container.Register<ISmsServiceSettings>(() => (SmsServiceSettings)(dynamic)ConfigurationManager.GetSection("smsServiceSettings"));

            //SMS Provider
            container.Register<ISmsProvider, TwilioProvider>();

            container.Verify();
        }
开发者ID:letmeproperty,项目名称:TransactionalSMS,代码行数:31,代码来源:Registry.cs

示例2: RegisterServices

        public void RegisterServices(Container container)
        {
            //Config
            container.RegisterWebApiRequest<IDbSettings>(() => new DbSettings(Constants.ConnectionName));

            //DbContext
            container.RegisterWebApiRequest<IPropertyMatrixContext>(() => new PropertyMatrixContext(container.GetInstance<IDbSettings>()));

            //Services
            container.Register<IPriceRangeService, PriceRangeService>();
            container.Register<IQuoteService, QuoteService>();
            container.Register<IAppointmentService, AppointmentService>();
            container.Register<ISearchService, SearchService>();

            //Data
            container.Register<IPriceRangeRepository, PriceRangeRepository>();
            container.Register<IQuoteRepository, QuoteRepository>();
            container.Register<IAppointmentRepository, AppointmentRepository>();
            container.Register<ISearchRepository, SearchRepository>();

            //Mapping
            container.Register<IMapToExisting<PriceRange, PriceRange>, PriceRangeMapper>();

            //Reference Generator
            container.Register<IReferenceGenerator, CryptographicReferenceGenerator>();

            container.Verify();
        }
开发者ID:letmeproperty,项目名称:PropertyMatrix,代码行数:28,代码来源:Registry.cs

示例3: Application_Start

        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            GlobalConfiguration.Configure(WebApiConfig.Register);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            var container = new Container();

            // Here comes container registrations
            #region Project-dependent injections
            container.RegisterWebApiRequest<IApplicationDbContext, ApplicationDbContext>();
            container.RegisterWebApiRequest<ApplicationDbContext>();

            container.RegisterWebApiRequest<IProductsService, ProductsService>();
            container.RegisterWebApiRequest<ICrudRepository<Product>, CrudRepository<Product>>();
            #endregion

            container.RegisterWebApiControllers(GlobalConfiguration.Configuration);
            container.Verify();

            GlobalConfiguration.Configuration.DependencyResolver =
                new SimpleInjectorWebApiDependencyResolver(container);
        }
开发者ID:Keraxel,项目名称:SilkBazaarDemo,代码行数:25,代码来源:Global.asax.cs

示例4: InitializeContainer

 private static void InitializeContainer(Container container)
 {
     // Register context, unit of work and repos with per request lifetime
     container.RegisterWebApiRequest<INorthwindSlimContext, NorthwindSlimContext>();
     container.RegisterWebApiRequest<INorthwindUnitOfWork, NorthwindUnitOfWork>();
     container.RegisterWebApiRequest<ICustomerRepository, CustomerRepository>();
     container.RegisterWebApiRequest<IOrderRepository, OrderRepository>();
 }
开发者ID:luboshl,项目名称:trackable-entities,代码行数:8,代码来源:SimpleInjectorWebApiInitializer.cs

示例5: InitializeContainer

 private static void InitializeContainer(Container container)
 {
     // Register services
     container.RegisterWebApiRequest<NorthwindSlim>();
     container.RegisterWebApiRequest<IProductsRepository, ProductsRepository>();
     container.RegisterWebApiRequest<ICustomersRepository, CustomersRepository>();
     container.RegisterWebApiRequest<IOrdersRepository, OrdersRepository>();
     container.RegisterWebApiRequest<INorthwindUnitOfWork, NorthwindUnitOfWork>();
 }
开发者ID:jiantaow,项目名称:AdvDotNet.Samples,代码行数:9,代码来源:SimpleInjectorWebApiInitializer.cs

示例6: RegisterRepositories

 private static void RegisterRepositories(Container container, DragonSecurityHmacSection settings)
 {
     container.RegisterWebApiRequest<IAppRepository>(() =>
     {
         var dapperAppRepository = new DapperAppRepository(container.GetInstance<IDbConnection>(), settings.AppsTableName);
         return dapperAppRepository;
     });
     container.RegisterWebApiRequest<IUserRepository>(() =>
     {
         var dapperUserRepository = new DapperUserRepository(container.GetInstance<IDbConnection>(),
             settings.UsersTableName);
         return dapperUserRepository;
     });
 }
开发者ID:aduggleby,项目名称:dragon,代码行数:14,代码来源:SimpleInjectorWebApiInitializer.cs

示例7: RegisterServices

        public void RegisterServices(Container container)
        {
            //Config
            container.RegisterWebApiRequest<IDbSettings>(() => new DbSettings(Constants.ConnectionName));

            //DbContext
            container.RegisterWebApiRequest<IScribbleContext>(() => new ScribbleContext(container.GetInstance<IDbSettings>()));

            //Services
            container.Register<IScribbleService, ScribbleService>();

            //Data
            container.Register<IScribbleRepository, ScribbleRepository>();

            container.Verify();
        }
开发者ID:letmeproperty,项目名称:Scribbles,代码行数:16,代码来源:Registry.cs

示例8: Configuration

        // Invoked once at startup to configure your application.
        public void Configuration(IAppBuilder builder)
        {
            var config = new HttpConfiguration();

            // Create the container as usual.
            var container = new Container();

            // Register your types, for instance using the RegisterWebApiRequest
            // extension from the integration package:
            container.RegisterWebApiRequest<IUserRepository, SqlUserRepository>();

            // This is an extension method from the integration package.
            container.RegisterWebApiControllers(config);

            container.Verify();

            config.DependencyResolver =
                new SimpleInjectorWebApiDependencyResolver(container);

            config.MapHttpAttributeRoutes();
            //config.Routes.MapHttpRoute("Default", "", new { controller = "OEmbed" });

            //config.Formatters.XmlFormatter.UseXmlSerializer = true;
            //config.Formatters.Remove(config.Formatters.JsonFormatter);
            ////config.Formatters.Remove(config.Formatters.XmlFormatter);
            // config.Formatters.JsonFormatter.UseDataContractJsonSerializer = true;
            builder.UseWebApi(config);

            //builder.Use(async (context, next) => {
            //    using (container.BeginExecutionContextScope())
            //    {
            //        await next();
            //    }
            //});
        }
开发者ID:igor-toporet,项目名称:OEmbedProxy,代码行数:36,代码来源:Startup.cs

示例9: RegisterServices

 public void RegisterServices(Container container)
 {
     container.RegisterWebApiRequest<IDbFactory>(() => new DbFactory(ConfigurationManager.ConnectionStrings["People"].ConnectionString));
     container.Register<IPeopleRepository, PeopleRepository>();
     container.Register<IPeopleService, PeopleService>();
     container.Verify();
 }
开发者ID:rg-kristianwilson,项目名称:People,代码行数:7,代码来源:Registry.cs

示例10: Register

        public static void Register(Container container)
        {
            container.Register(typeof (IQueryHandler<,>), new[] {typeof (IQueryHandler<,>).Assembly});
            container.Register(typeof (ICommandHandler<,>), new[] {typeof (ICommandHandler<,>).Assembly});

            container.RegisterCollection(typeof (IHyperMediaState), typeof (IHyperMediaState).Assembly);
            container.Register<IBoardState, BoardState>();
            container.Register<IBoardTaskState, BoardTaskState>();
            container.Register<IBoardColumnState, BoardColumnState>();

            container.Register<ISlugService, SlugService>();

            container.Register<ICommandDispatcher, CommandDispatcher>();
            container.Register<IQueryDispatcher, QueryDispatcher>();
            container.Register<ILinkFactory, LinkFactory>();
            container.Register<IHyperMediaFactory, HyperMediaFactory>();
            container.Register<IMappingService, MappingService>();

            container.RegisterWebApiRequest<IDataContext, DataContext>();

            container.RegisterWebApiControllers(GlobalConfiguration.Configuration);
            container.EnableHttpRequestMessageTracking(GlobalConfiguration.Configuration);
            container.RegisterSingleton<IRequestMessageProvider>(new RequestMessageProvider(container));

            container.Register<IValidator<Board>, BoardValidator>();
            container.Register<IValidator<BoardColumn>, BoardColumnValidator>();
            container.Register<IValidator<BoardTask>, BoardTaskValidator>();

            container.Verify();

            GlobalConfiguration.Configuration.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container);
        }
开发者ID:linal,项目名称:KanbanBoardApi,代码行数:32,代码来源:SimpleInjectorConfig.cs

示例11: Initialize

 public static void Initialize(HttpConfiguration config)
 {
     Container container = new Container();
     container.RegisterWebApiRequest<IContactsDbContext>(() => new ContactsDbContext());
     container.RegisterWebApiControllers(config);
     container.Verify();
     config.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container);
 }
开发者ID:makosovic,项目名称:contacts,代码行数:8,代码来源:DependencyConfig.cs

示例12: RegisterDbConnection

 private static void RegisterDbConnection(Container container, string connectionString)
 {
     container.RegisterWebApiRequest<IDbConnection>(() =>
     {
         var connection = new SqlConnection(connectionString);
         connection.Open();
         return connection;
     });
 }
开发者ID:aduggleby,项目名称:dragon,代码行数:9,代码来源:SimpleInjectorWebApiInitializer.cs

示例13: BuildContainer

        internal static void BuildContainer()
        {
            var webApiContainer = new Container();

            webApiContainer.RegisterSingleton<IConfig, WebConfig>();

            webApiContainer.RegisterWebApiRequest<GHVEntities>();
            webApiContainer.RegisterWebApiRequest<UserSessionVerificationService>();
            webApiContainer.RegisterSingleton<RedisConnectionManager>();

            // This is an extension method from the integration package.
            webApiContainer.RegisterWebApiControllers(GlobalConfiguration.Configuration);

            webApiContainer.Verify();

            GlobalConfiguration.Configuration.DependencyResolver =
                new SimpleInjectorWebApiDependencyResolver(webApiContainer);
        }
开发者ID:mbgreen,项目名称:GHV,代码行数:18,代码来源:ContainerConfig.cs

示例14: GetShouldReturnOrderWithOrderId_1

        public async void GetShouldReturnOrderWithOrderId_1()
        {
            // Arrange

            // Setup Http Config
            var config = new HttpConfiguration();
            config.Routes.MapHttpRoute(
                name: "DefaultApi", 
                routeTemplate: "api/{controller}/{id}",
                defaults: new {id = RouteParameter.Optional});
            config.Formatters.JsonPreserveReferences();

            // Setup DI container
            var container = new Container();
            const string databasePath = @"..\..\..\PocoDemo.Web\App_Data\NorthwindSlim.mdf";
            string connectionString = string.Format(
                    @"Data Source=(localdb)\v11.0;AttachDbFilename={0};Integrated Security=True;MultipleActiveResultSets=True",
                    Path.GetFullPath(databasePath));
            container.RegisterWebApiRequest(() => new NorthwindSlim(connectionString));
            container.RegisterWebApiRequest<IProductsRepository, ProductsRepository>();
            container.RegisterWebApiRequest<INorthwindUnitOfWork, NorthwindUnitOfWork>();
            container.RegisterWebApiRequest<ProductsController>();
            container.Verify();

            // Set Dependency Resolver
            config.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container);

            // Create server and client
            var server = new HttpServer(config);
            var client = new HttpClient(server);
            client.BaseAddress = new Uri("http://test.com/api/orders/");
            const int orderId = 1;

            // Act
            HttpResponseMessage response = await client.GetAsync(orderId.ToString());

            // Assert
            response.EnsureSuccessStatusCode();
            var order = await response.Content.ReadAsAsync<Order>();
            Assert.NotNull(order);
            Assert.Equal(1, order.OrderId);
        }
开发者ID:jiantaow,项目名称:AdvDotNet.Samples,代码行数:42,代码来源:OrdersControllerTest.cs

示例15: ConfigureIoC

        public static void ConfigureIoC(HttpConfiguration config, Container container)
        {
            container.Options.DefaultScopedLifestyle = new ExecutionContextScopeLifestyle();
            container.RegisterWebApiRequest(() =>
            {
                if (HttpContext.Current != null && HttpContext.Current.Items["owin.Environment"] == null && container.IsVerifying())
                {
                    return new OwinContext().Authentication;
                }
                return HttpContext.Current.GetOwinContext().Authentication;

            });
            container.RegisterWebApiControllers(config, Assembly.GetExecutingAssembly());
            container.Register<ApplicationDbContext>(Lifestyle.Scoped);
            container.RegisterWebApiRequest<IUserStore<ApplicationUser>>(() => new UserStore<ApplicationUser>(new ApplicationDbContext()));
            container.Register<ApplicationUserManager>(Lifestyle.Scoped);
            container.Register<ApplicationSignInManager>(Lifestyle.Scoped);
            container.Verify();
            config.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container);
        }
开发者ID:gustavoferrazfontes,项目名称:IdentityIsolation,代码行数:20,代码来源:Startup.cs


注:本文中的SimpleInjector.Container.RegisterWebApiRequest方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。