本文整理汇总了C#中SimpleInjector.Container.RegisterPerWebRequest方法的典型用法代码示例。如果您正苦于以下问题:C# Container.RegisterPerWebRequest方法的具体用法?C# Container.RegisterPerWebRequest怎么用?C# Container.RegisterPerWebRequest使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SimpleInjector.Container
的用法示例。
在下文中一共展示了Container.RegisterPerWebRequest方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RegisterServices
public void RegisterServices(Container container)
{
container.RegisterPerWebRequest<IUserStore<User>>(() => new UserStore<User>(container.GetInstance<IdentityDbContext<User>>()));
container.RegisterPerWebRequest(() => container.IsVerifying()
? new OwinContext(new Dictionary<string, object>()).Authentication
: HttpContext.Current.GetOwinContext().Authentication);
}
示例2: InitializeContainer
private static void InitializeContainer(Container container)
{
container.RegisterPerWebRequest<IConfigurationHelper, ConfigurationHelper>();
container.RegisterPerWebRequest<ISecurityManager, SecurityManager>();
container.RegisterPerWebRequest<IChatRepository, MongoChatRepository>();
container.RegisterPerWebRequest<ChatHub>();
}
示例3: Config
public static void Config(Container container)
{
container.RegisterPerWebRequest<IDatabaseFactory,DatabaseFactory>();
container.RegisterOpenGeneric(typeof(IRepository<>), typeof(Repository<>));
container.RegisterPerWebRequest<IUnitOfWork, UnitOfWork>();
container.Register<IProductRepository, ProductRepository>();
container.Register(()=>new SrcSamples());
}
示例4: RegisterServices
public void RegisterServices(Container container)
{
container.RegisterPerWebRequest(() => new BloggableDbContext(AppSettingConstants.DefaultDbConnectionName));
container.RegisterPerWebRequest<DbContext>(container.GetInstance<BloggableDbContext>);
container.RegisterPerWebRequest<IdentityDbContext<User>>(container.GetInstance<BloggableDbContext>);
container.RegisterOpenGeneric(typeof(IDeletableEntityRepository<>), typeof(EfDeletableEntityRepository<>));
container.RegisterOpenGeneric(typeof(IRepository<>), typeof(EfRepository<>));
}
示例5: RegisterServices
public void RegisterServices(Container container)
{
var documentDbAppKey = ConfigurationManager.AppSettings["DocumentDbAppKey"];
var documentDbUri = ConfigurationManager.AppSettings["DocumentDbUri"];
Logger.InfoFormat("DocumentDbAppKey: {0}, DocumentDbUri: {1}", documentDbAppKey, documentDbUri);
container.RegisterPerWebRequest<IMessageRepository, DocumentDbMessageRepository>();
container.RegisterPerWebRequest<IMessageCounter>(() => new DocumentDbMessageCounter(documentDbUri, documentDbAppKey));
}
示例6: InitializeContainer
private static void InitializeContainer(Container container)
{
// DbContext, UoW & Repository
container.RegisterPerWebRequest<DbContext, SharedPicDbContext>();
container.RegisterPerWebRequest<IUnitOfWork, UnitOfWork>();
container.Register<IRepository, GenericRepository>();
// Services
// TODO
}
示例7: InitializeContainer
private static void InitializeContainer(Container container)
{
container.RegisterPerWebRequest<IDbConnection>(CreateConnection);
container.RegisterSingle<Logger>();
container.Register<IDbCommand>(() => new SqlCommand(string.Empty,container.GetInstance<IDbConnection>() as SqlConnection));
container.RegisterPerWebRequest<IContactRepository, ContactRepository>();
//container.RegisterManyForOpenGeneric(typeof(ICommandHandler<>), typeof(Contact).Assembly);
container.RegisterPerWebRequest<ICommandHandler<CreateContactCommand>, CreateContactHandler>();
container.RegisterDecorator(typeof (ICommandHandler<>), typeof (CommandAuditingHandler<>));
container.Register<UnitOfWork>();
}
示例8: RegisterRavenDB
private static void RegisterRavenDB(Container container)
{
var store = new DocumentStore { ConnectionStringName = "Server" };
store.Initialize();
container.RegisterSingle<IDocumentStore>(store);
container.RegisterPerWebRequest<IAsyncDocumentSession>(() => store.OpenAsyncSession());
container.RegisterPerWebRequest<IDocumentSession>(() => store.OpenSession());
}
示例9: RegisterServices
public void RegisterServices(Container container)
{
container.RegisterSingleton<IDocumentStore>(() =>
{
var url = ConfigurationManager.AppSettings["RavenDbUrl"];
var apiKey = ConfigurationManager.AppSettings["RavenDbApiKey"];
return DocumentStoreManager.GetCurrent(url, apiKey);
});
container.RegisterPerWebRequest<IMessageCounter, RavenDbMessageCounter>();
container.RegisterPerWebRequest<IMessageRepository, RevenDbMessageRepository>();
}
示例10: Configure
public static void Configure()
{
Container = new Container();
Container.Register(() => HttpContext.Current.GetOwinContext());
Container.RegisterPerWebRequest(()=> Container.GetInstance<IOwinContext>().Authentication);
Container.RegisterPerWebRequest(() => AppUserManager.Create(new IdentityFactoryOptions<AppUserManager>(), Container.GetInstance<IOwinContext>()));
Container.RegisterPerWebRequest(AppDbContext.Create);
Container.RegisterPerWebRequest<DbContext>(() => Container.GetInstance<AppDbContext>());
RepositoryRegistry.InsertIn(Container);
}
示例11: Register
public void Register(Container container)
{
container.RegisterSingle<IUserStore<ApplicationUser, Guid>, ApplicationUserStore>();
container.RegisterSingle<IIdentityMessageService, ApplicationIdentityMessageService>();
container.RegisterSingle<ApplicationUserManager>();
container.RegisterPerWebRequest<ApplicationSignInManager>();
container.RegisterPerWebRequest<IUserContext, UserContext>();
container.RegisterPerWebRequest<IContextService, ContextService>();
container.RegisterMvcIntegratedFilterProvider();
DependencyResolver.SetResolver(new SimpleInjectorDependencyResolver(container));
}
示例12: RegisterServices
public static void RegisterServices(Container container)
{
container.Register<ApplicationDbContext>(Lifestyle.Scoped);
container.RegisterPerWebRequest<IUserStore<ApplicationUser>>(() => new UserStore<ApplicationUser>(new ApplicationDbContext()));
container.Register<ApplicationUserManager>(Lifestyle.Scoped);
container.Register<ApplicationSignInManager>(Lifestyle.Scoped);
}
示例13: Initialize
public static void Initialize()
{
var container = new Container();
container.Options.DefaultScopedLifestyle = new WebRequestLifestyle();
InitializeContainer(container);
container.RegisterPerWebRequest(() =>
{
if (HttpContext.Current != null && HttpContext.Current.Items["owin.Enviroment"] == null && container.IsVerifying)
{
return new OwinContext().Authentication;
}
return HttpContext.Current.GetOwinContext().Authentication;
});
container.RegisterMvcControllers(Assembly.GetExecutingAssembly());
container.RegisterWebApiControllers(GlobalConfiguration.Configuration);
container.Verify();
DependencyResolver.SetResolver(new SimpleInjectorDependencyResolver(container));
GlobalConfiguration.Configuration.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container);
}
示例14: Initialise
/// <summary>
/// Initialises IoC on the website
/// </summary>
public static void Initialise()
{
var container = new Container();
container.Options.ConstructorResolutionBehavior =
new T4MvcControllerConstructorResolutionBehavior(container.Options.ConstructorResolutionBehavior);
// Register the MVC controls
container.RegisterMvcControllers(Assembly.GetExecutingAssembly());
container.RegisterMvcAttributeFilterProvider();
container.Register<ITempDataProvider, CookieTempDataProvider>();
// The other MVC stuff
//container.Register<ITempDataProvider, CookieTempDataProvider>();
// Register the other ASP.NET MVC stuff
// TODO: Figure out how to do this properly - http://simpleinjector.codeplex.com/discussions/430939
//container.RegisterPerWebRequest<RequestContext>(() => HttpContext.Current.Request.RequestContext);
//container.RegisterPerWebRequest<UrlHelper>(() => new UrlHelper(container.GetInstance<RequestContext>()));
container.RegisterPerWebRequest<IWebCache>(config => config.WebCacheType);
// Initialise all the standard stuff
Ioc.Initialise(container, new WebRequestLifestyle());
DependencyResolver.SetResolver(new SimpleInjectorDependencyResolver(container));
}
示例15: Initialize
public static void Initialize()
{
var container = new Container();
container.Options.DefaultScopedLifestyle = new WebRequestLifestyle();
// Chamada dos módulos do Simple Injector
InitializeContainer(container);
// Necessário para registrar o ambiente do Owin que é dependência do Identity
// Feito fora da camada de IoC para não levar o System.Web para fora
container.RegisterPerWebRequest(() =>
{
if (HttpContext.Current != null && HttpContext.Current.Items["owin.Environment"] == null && container.IsVerifying())
{
return new OwinContext().Authentication;
}
return HttpContext.Current.GetOwinContext().Authentication;
});
container.RegisterMvcControllers(Assembly.GetExecutingAssembly());
container.Verify();
DependencyResolver.SetResolver(new SimpleInjectorDependencyResolver(container));
}