ServiceCollectionMap Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine Karte über einer IServiceCollection Karte bereit, mit der Einträge bedingt hinzugefügt oder neu geschrieben werden können ServiceDescriptor , ohne dass bei jedem Ausführen der Dienstauflistung lineare Scans erforderlich sind.
[System.Runtime.CompilerServices.Nullable(0)]
public class ServiceCollectionMap : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Infrastructure.IInternalServiceCollectionMap>
public class ServiceCollectionMap : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Internal.InternalServiceCollectionMap>
public class ServiceCollectionMap : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Infrastructure.IInternalServiceCollectionMap>
[<System.Runtime.CompilerServices.Nullable(0)>]
type ServiceCollectionMap = class
interface IInfrastructure<IInternalServiceCollectionMap>
type ServiceCollectionMap = class
interface IInfrastructure<InternalServiceCollectionMap>
type ServiceCollectionMap = class
interface IInfrastructure<IInternalServiceCollectionMap>
Public Class ServiceCollectionMap
Implements IInfrastructure(Of IInternalServiceCollectionMap)
Public Class ServiceCollectionMap
Implements IInfrastructure(Of InternalServiceCollectionMap)
- Vererbung
-
ServiceCollectionMap
- Attribute
- Implementiert
-
IInfrastructure<IInternalServiceCollectionMap> IInfrastructure<Microsoft.EntityFrameworkCore.Internal.InternalServiceCollectionMap>
Hinweise
Beachten Sie, dass die Auflistung nicht auf andere Weise geändert werden sollte, während sie von der Karte verwaltet wird. Die Sammlung kann auf normale Weise verwendet werden, nachdem Änderungen mit der Karte abgeschlossen wurden.
Weitere Informationen und Beispiele finden Sie unter Implementierung von Datenbankanbietern und Erweiterungen .
Konstruktoren
| Name | Beschreibung |
|---|---|
| ServiceCollectionMap(IServiceCollection) |
Erstellt eine neue ServiceCollectionMap , die für den angegebenen IServiceCollectionVorgang ausgeführt werden soll. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| ServiceCollection |
Der zugrunde liegende IServiceCollection. |
Methoden
| Name | Beschreibung |
|---|---|
| TryAdd(Type, Func<IServiceProvider,Object>, ServiceLifetime) |
Fügt einen von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAdd(Type, Type, ServiceLifetime) |
Fügt einen Dienst hinzu, der vom angegebenen konkreten Typ implementiert wird, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddEnumerable(Type, Type, Func<IServiceProvider,Object>, ServiceLifetime) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen von der angegebenen Factory implementierten Dienst hinzu. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddEnumerable(Type, Type, ServiceLifetime) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Dienst hinzu, der durch den angegebenen Konkreten Typ implementiert wird. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddScoped(Type, Func<IServiceProvider,Object>) |
Fügt einen Scoped von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddScoped(Type, Type) |
Fügt einen Scoped Dienst hinzu, der vom angegebenen konkreten Typ implementiert wird, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddScoped<TService,TImplementation>() |
Fügt einen Scoped Dienst hinzu, der vom angegebenen konkreten Typ implementiert wird, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddScoped<TService,TImplementation>(Func<IServiceProvider,TImplementation>) |
Fügt einen Scoped von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddScoped<TService>(Func<IServiceProvider,TService>) |
Fügt einen Scoped von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddScopedEnumerable(Type, Type) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Scoped Dienst hinzu, der durch den angegebenen Konkreten Typ implementiert wird. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddScopedEnumerable<TService,TImplementation>() |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Scoped Dienst hinzu, der durch den angegebenen Konkreten Typ implementiert wird. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddScopedEnumerable<TService,TImplementation>(Func<IServiceProvider,TImplementation>) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Scoped von der angegebenen Factory implementierten Dienst hinzu. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddSingleton(Type, Func<IServiceProvider,Object>) |
Fügt einen Singleton von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddSingleton(Type, Object) |
Fügt einen Singleton von der angegebenen Instanz implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddSingleton(Type, Type) |
Fügt einen Singleton Dienst hinzu, der vom angegebenen konkreten Typ implementiert wird, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddSingleton<TService,TImplementation>() |
Fügt einen Singleton Dienst hinzu, der vom angegebenen konkreten Typ implementiert wird, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddSingleton<TService,TImplementation>(Func<IServiceProvider,TImplementation>) |
Fügt einen Singleton von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddSingleton<TService>(Func<IServiceProvider,TService>) |
Fügt einen Singleton von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddSingleton<TService>(TService) |
Fügt einen Singleton von der angegebenen Instanz implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddSingletonEnumerable(Type, Object) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Singleton Dienst hinzu, der von der angegebenen Instanz implementiert wird. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddSingletonEnumerable(Type, Type) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Singleton Dienst hinzu, der durch den angegebenen Konkreten Typ implementiert wird. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddSingletonEnumerable<TService,TImplementation>() |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Singleton Dienst hinzu, der durch den angegebenen Konkreten Typ implementiert wird. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddSingletonEnumerable<TService,TImplementation>(Func<IServiceProvider,TImplementation>) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Singleton von der angegebenen Factory implementierten Dienst hinzu. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddSingletonEnumerable<TService>(TService) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Singleton Dienst hinzu, der von der angegebenen Instanz implementiert wird. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddTransient(Type, Func<IServiceProvider,Object>) |
Fügt einen Transient von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddTransient(Type, Type) |
Fügt einen Transient Dienst hinzu, der vom angegebenen konkreten Typ implementiert wird, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddTransient<TService,TImplementation>() |
Fügt einen Transient Dienst hinzu, der vom angegebenen konkreten Typ implementiert wird, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddTransient<TService,TImplementation>(Func<IServiceProvider,TImplementation>) |
Fügt einen Transient von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddTransient<TService>(Func<IServiceProvider,TService>) |
Fügt einen Transient von der angegebenen Factory implementierten Dienst hinzu, wenn kein Dienst für den angegebenen Diensttyp bereits registriert wurde. |
| TryAddTransientEnumerable(Type, Type) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Transient Dienst hinzu, der durch den angegebenen Konkreten Typ implementiert wird. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddTransientEnumerable<TService,TImplementation>() |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Transient Dienst hinzu, der durch den angegebenen Konkreten Typ implementiert wird. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
| TryAddTransientEnumerable<TService,TImplementation>(Func<IServiceProvider,TImplementation>) |
Fügt der Liste der Dienste, die den angegebenen Vertrag implementieren, einen Transient von der angegebenen Factory implementierten Dienst hinzu. Der Dienst wird nur hinzugefügt, wenn die Sammlung keine andere Registrierung für denselben Dienst- und Implementierungstyp enthält. |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IInfrastructure<IInternalServiceCollectionMap>.Instance |
Stellt eine Karte über einer IServiceCollection Karte bereit, mit der Einträge bedingt hinzugefügt oder neu geschrieben werden können ServiceDescriptor , ohne dass bei jedem Ausführen der Dienstauflistung lineare Scans erforderlich sind. |
| IInfrastructure<InternalServiceCollectionMap>.Instance |
Stellt eine Karte über einer IServiceCollection Karte bereit, mit der Einträge bedingt hinzugefügt oder neu geschrieben werden können ServiceDescriptor , ohne dass bei jedem Ausführen der Dienstauflistung lineare Scans erforderlich sind. |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetInfrastructure<T>(IInfrastructure<T>) |
Ruft den Wert aus einer Eigenschaft ab, die mithilfe von IInfrastructure<T>ausgeblendet wird. Diese Methode wird in der Regel von Datenbankanbietern (und anderen Erweiterungen) verwendet. Sie wird in der Regel nicht im Anwendungscode verwendet. |