Freigeben über


RelationalMethodCallTranslatorProvider Klasse

Definition

Stellt Übersetzungen für LINQ-Ausdrücke MethodCallExpression bereit, indem an mehrere spezialisierte Methodenaufrufübersetzer verteilt wird.

Die Dienstlebensdauer ist Scoped. Dies bedeutet, dass jede DbContext instance ihre eigene instance dieses Diensts verwendet. Die Implementierung hängt möglicherweise von anderen Diensten ab, die mit einer beliebigen Lebensdauer registriert sind. Die Implementierung muss nicht threadsicher sein.

public class RelationalMethodCallTranslatorProvider : Microsoft.EntityFrameworkCore.Query.IMethodCallTranslatorProvider
type RelationalMethodCallTranslatorProvider = class
    interface IMethodCallTranslatorProvider
Public Class RelationalMethodCallTranslatorProvider
Implements IMethodCallTranslatorProvider
Vererbung
RelationalMethodCallTranslatorProvider
Implementiert

Konstruktoren

RelationalMethodCallTranslatorProvider(RelationalMethodCallTranslatorProviderDependencies)

Erstellt eine neue Instanz der RelationalMethodCallTranslatorProvider-Klasse.

Eigenschaften

Dependencies

Abhängigkeiten für diesen Dienst.

Methoden

AddTranslators(IEnumerable<IMethodCallTranslator>)

Fügt zusätzliche Übersetzer hinzu, die Vorrang vor vorhandenen registrierten Übersetzern haben.

Translate(IModel, SqlExpression, MethodInfo, IReadOnlyList<SqlExpression>)

Stellt Übersetzungen für LINQ-Ausdrücke MethodCallExpression bereit, indem an mehrere spezialisierte Methodenaufrufübersetzer verteilt wird.

Die Dienstlebensdauer ist Scoped. Dies bedeutet, dass jede DbContext instance ihre eigene instance dieses Diensts verwendet. Die Implementierung hängt möglicherweise von anderen Diensten ab, die mit einer beliebigen Lebensdauer registriert sind. Die Implementierung muss nicht threadsicher sein.

Translate(IModel, SqlExpression, MethodInfo, IReadOnlyList<SqlExpression>, IDiagnosticsLogger<DbLoggerCategory.Query>)

Übersetzt einen LINQ MethodCallExpression in eine SQL-Entsprechung.

Gilt für: