Show / Hide Table of Contents

Class NetServerServiceCollectionExtensions

Inheritance
object
NetServerServiceCollectionExtensions
Inherited Members
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
Namespace: Microsoft.Extensions.DependencyInjection
Assembly: SoCore.dll
Syntax
public static class NetServerServiceCollectionExtensions

Methods

AddDatabaseScoped<TImplementation>(IServiceCollection)

Declaration
public static IServiceCollection AddDatabaseScoped<TImplementation>(this IServiceCollection services) where TImplementation : class
Parameters
Type Name Description
IServiceCollection services
Returns
Type Description
IServiceCollection
Type Parameters
Name Description
TImplementation

AddDatabaseScoped<TService, TImplementation>(IServiceCollection)

Declaration
public static IServiceCollection AddDatabaseScoped<TService, TImplementation>(this IServiceCollection services) where TService : class where TImplementation : class, TService
Parameters
Type Name Description
IServiceCollection services
Returns
Type Description
IServiceCollection
Type Parameters
Name Description
TService
TImplementation

AddNetServerCoreForAsyncLocalProcess(IServiceCollection, IConfiguration, Action<NetServerCoreOptionsBuilder>)

Declaration
public static IServiceCollection AddNetServerCoreForAsyncLocalProcess(this IServiceCollection services, IConfiguration configuration, Action<NetServerCoreOptionsBuilder> optionsAction = null)
Parameters
Type Name Description
IServiceCollection services
IConfiguration configuration
Action<NetServerCoreOptionsBuilder> optionsAction
Returns
Type Description
IServiceCollection

AddNetServerCoreForSingleSessionProcess(IServiceCollection, IConfiguration, Action<NetServerCoreOptionsBuilder>)

Declaration
public static IServiceCollection AddNetServerCoreForSingleSessionProcess(this IServiceCollection services, IConfiguration configuration, Action<NetServerCoreOptionsBuilder> optionsAction = null)
Parameters
Type Name Description
IServiceCollection services
IConfiguration configuration
Action<NetServerCoreOptionsBuilder> optionsAction
Returns
Type Description
IServiceCollection

AddNetServerCore<TNSPrincipalAccessor>(IServiceCollection, IConfiguration, Action<NetServerCoreOptionsBuilder>)

Add NetServer core

Declaration
public static IServiceCollection AddNetServerCore<TNSPrincipalAccessor>(this IServiceCollection services, IConfiguration configuration, Action<NetServerCoreOptionsBuilder> optionsAction = null) where TNSPrincipalAccessor : class, INSPrincipalAccessor
Parameters
Type Name Description
IServiceCollection services
IConfiguration configuration
Action<NetServerCoreOptionsBuilder> optionsAction
Returns
Type Description
IServiceCollection
Type Parameters
Name Description
TNSPrincipalAccessor
Remarks

This method calls AddLogging(IServiceCollection) to add logging, if it has need been added previously

AddSingletonPlugin<TPlugin>(IServiceCollection)

Add a Plugin to the service colelction as a singleton type and also add it explicitly to the SuperOffice.Factory.PluginFactory using ClassFactory as the internal instance resolver.

Declaration
public static IServiceCollection AddSingletonPlugin<TPlugin>(this IServiceCollection services) where TPlugin : class, IPlugin
Parameters
Type Name Description
IServiceCollection services
Returns
Type Description
IServiceCollection
Type Parameters
Name Description
TPlugin

Type of plugin to explicitly add

Exceptions
Type Condition
SoClassFactoryException

Thrown if the type is not a valid plugin with SuperOffice.Factory.PluginAttribute.IsAutoDiscoverable set to false.

AddTransientPlugin<TPlugin>(IServiceCollection, Func<IServiceProvider, TPlugin>)

Add a Plugin to the service colelction as a transient type and also add it explicitly to the SuperOffice.Factory.PluginFactory using ClassFactory as the internal instance resolver.

Declaration
public static IServiceCollection AddTransientPlugin<TPlugin>(this IServiceCollection services, Func<IServiceProvider, TPlugin> implementationFactory = null) where TPlugin : class, IPlugin
Parameters
Type Name Description
IServiceCollection services
Func<IServiceProvider, TPlugin> implementationFactory
Returns
Type Description
IServiceCollection
Type Parameters
Name Description
TPlugin

Type of plugin to explicitly add

Exceptions
Type Condition
SoClassFactoryException

Thrown if the type is not a valid plugin with SuperOffice.Factory.PluginAttribute.IsAutoDiscoverable set to false.

ValidateNetServerTypes(IServiceCollection)

Checks and validates if the services registered in the service collection are valid for NetServer, such as types registered wiht AddDatabaseScoped.

Declaration
public static IServiceCollection ValidateNetServerTypes(this IServiceCollection serviceCollection)
Parameters
Type Name Description
IServiceCollection serviceCollection
Returns
Type Description
IServiceCollection
Remarks

Checks on a dependency injection can be ignored with IgnoreNetServerValidateAttribute attribute.

Exceptions
Type Condition
AggregateException

Thrown if any of the services registered in the service collection are not valid for NetServer.

© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top