Udostępnij za pośrednictwem


RelationalOptionsExtension Klasa

Definicja

Reprezentuje opcje zarządzane przez dostawców relacyjnej bazy danych. Te opcje są ustawiane przy użyciu polecenia DbContextOptionsBuilder.

public abstract class RelationalOptionsExtension : Microsoft.EntityFrameworkCore.Infrastructure.IDbContextOptionsExtension
type RelationalOptionsExtension = class
    interface IDbContextOptionsExtension
Public MustInherit Class RelationalOptionsExtension
Implements IDbContextOptionsExtension
Dziedziczenie
RelationalOptionsExtension
Implementuje

Uwagi

Wystąpienia tej klasy są przeznaczone do niezmienności. Aby zmienić opcję, wywołaj jedną z opcji "With..." metody uzyskiwania nowego wystąpienia ze zmienioną opcją.

Aby uzyskać więcej informacji i przykłady , zobacz Implementacja dostawców i rozszerzeń bazy danych .

Konstruktory

RelationalOptionsExtension()

Tworzy nowy zestaw opcji z wszystkimi ustawionymi wartościami domyślnymi.

RelationalOptionsExtension(RelationalOptionsExtension)

Wywoływana przez konstruktora klasy pochodnej podczas implementowania Clone() metody .

Właściwości

CommandTimeout

Limit czasu polecenia lub null jeśli nie został ustawiony żaden.

Connection

, DbConnectionlub null jeśli parametry połączenia został użyty zamiast pełnego obiektu połączenia.

ConnectionString

Parametry połączenia lub null jeśli użyto elementu DbConnection zamiast parametry połączenia.

ExecutionStrategyFactory

Fabryka do tworzenia domyślnej IExecutionStrategywartości lub null , jeśli żadna z nich nie została skonfigurowana.

Info

Informacje/metadane dotyczące rozszerzenia.

IsConnectionOwned

true jeśli element Connection jest własnością kontekstu i powinien zostać odpowiednio usunięty.

LogFragment

Tworzy fragment komunikatu do rejestrowania zwykle zawierający informacje o wszelkich przydatnych opcjach innych niż domyślne, które zostały skonfigurowane.

MaxBatchSize

Maksymalna liczba instrukcji, które zostaną uwzględnione w poleceniach wysyłanych do bazy danych w czasie SaveChanges() lub null jeśli nie ustawiono żadnej.

MigrationsAssembly

Nazwa zestawu, który zawiera migracje, lub null jeśli nie został ustawiony żaden.

MigrationsHistoryTableName

Nazwa tabeli do użycia dla tabeli historii migracji lub null jeśli nie została ustawiona żadna.

MigrationsHistoryTableSchema

Schemat do użycia dla tabeli historii migracji lub null jeśli nie został ustawiony żaden.

MinBatchSize

Minimalna liczba instrukcji, które są wymagane w przypadku polecenia z wieloma instrukcjami wysyłanymi do bazy danych w czasie SaveChanges() lub null jeśli nie zostało ustawione żadne.

QuerySplittingBehavior

Element QuerySplittingBehavior do użycia podczas ładowania powiązanych kolekcji w zapytaniu.

UseRelationalNulls

Wskazuje, czy podczas porównywania wartości null należy używać semantyki relacyjnej bazy danych. Domyślnie program Entity Framework użyje semantyki języka C# dla wartości null i wygeneruje język SQL, aby zrekompensować różnice w sposobie obsługi wartości null przez bazę danych.

Metody

ApplyServices(IServiceCollection)

Dodaje usługi wymagane do wykonania wybranych opcji. Jest to używane, gdy nie ma zewnętrznego IServiceProvider i ef utrzymuje własnego dostawcę usług wewnętrznie. Dzięki temu dostawcy baz danych (i innych rozszerzeń) mogą rejestrować wymagane usługi, gdy program EF tworzy dostawcę usług.

Clone()

Zastąp tę metodę w klasie pochodnej, aby upewnić się, że każdy utworzony klon jest również tej klasy.

Extract(IDbContextOptions)

Znajduje istniejącą RelationalOptionsExtension zarejestrowaną w podanych opcjach lub zgłasza wyjątek, jeśli żaden z nich nie został zarejestrowany. Jest to zwykle używane do znajdowania konfiguracji relacyjnej, gdy wiadomo, że jest używany dostawca relacyjny.

GetServiceProviderHashCode()

Zwraca kod skrótu utworzony na podstawie wszystkich opcji, które mogłyby spowodować, że będzie potrzebny nowy IServiceProvider kod. Większość rozszerzeń nie ma żadnych takich opcji i powinna zwrócić zero.

Validate(IDbContextOptions)

Daje rozszerzenie szansę sprawdzenia, czy wszystkie opcje w rozszerzeniu są prawidłowe. Większość rozszerzeń nie ma nieprawidłowych kombinacji, dlatego będzie to operacja no-op. Jeśli opcje są nieprawidłowe, należy zgłosić wyjątek.

WithCommandTimeout(Nullable<Int32>)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithConnection(DbConnection, Boolean)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithConnection(DbConnection)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithConnectionString(String)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithDefaultWarningConfiguration(CoreOptionsExtension)

Dodaje wartość domyślną WarningBehavior dla zdarzeń relacyjnych.

WithExecutionStrategyFactory(Func<ExecutionStrategyDependencies,IExecutionStrategy>)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithMaxBatchSize(Nullable<Int32>)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithMigrationsAssembly(String)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithMigrationsHistoryTableName(String)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithMigrationsHistoryTableSchema(String)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithMinBatchSize(Nullable<Int32>)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithUseQuerySplittingBehavior(QuerySplittingBehavior)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

WithUseRelationalNulls(Boolean)

Tworzy nowe wystąpienie z wszystkimi opcjami takimi samymi jak w przypadku tego wystąpienia, ale z daną opcją uległa zmianie. Nietypowe jest bezpośrednie wywołanie tej metody. Zamiast tego użyj polecenia DbContextOptionsBuilder.

Dotyczy