IBolServicesContainer¶
Aggregate contract that bundles the services every BOL page model needs, so page model constructors take one parameter instead of eight. BolServicesContainer implements it.
Purpose¶
- Give derived pages a single injection point for security, logging, context, menu, configuration, environment, cookie, and cookie helper services.
Context¶
- Namespace:
BolMiddleware.Services - Assembly/package:
BolMiddleware
Public members¶
| Member | Signature | Purpose |
|---|---|---|
SecurityService |
ISecurityService SecurityService { get; } |
Identity, role, and policy access checks. |
LogService |
ISaifLogService LogService { get; } |
Platform logger used by the page models. |
WebContextService |
IWebContextService WebContextService { get; } |
Reads and saves the web context. |
MenuService |
IMenuService MenuService { get; } |
Loads the user's menu. |
MyConfiguration |
IConfiguration MyConfiguration { get; } |
Application configuration. |
EnvironmentClient |
IEnvironmentClient EnvironmentClient { get; } |
Reads the bolmiddleware: environment keys. |
CookieService |
ICookieService CookieService { get; } |
Reads and writes cookies. |
ContextCookieHelper |
IContextCookieHelper ContextCookieHelper { get; } |
Manages user settings in the context cookie. |
Behavioral notes¶
- The container is scoped, so each request gets its own instance.
Constraints and usage notes¶
IEnvironmentClient,ISaifLogService, andIConfigurationmust be supplied by the host.
Sources¶
- src/BolMiddleware/Services/IBolServicesContainer.cs