QueryTypeBuilder Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia prosty interfejs API do konfigurowania typu zapytania.
Wystąpienia tej klasy są zwracane z metod podczas korzystania z interfejsu ModelBuilder API i nie są przeznaczone do bezpośredniego konstruowania w kodzie aplikacji.
public class QueryTypeBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.IMutableModel>, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>
type QueryTypeBuilder = class
interface IInfrastructure<IMutableModel>
interface IInfrastructure<InternalEntityTypeBuilder>
Public Class QueryTypeBuilder
Implements IInfrastructure(Of IMutableModel), IInfrastructure(Of InternalEntityTypeBuilder)
- Dziedziczenie
-
QueryTypeBuilder
- Pochodne
- Implementuje
-
IInfrastructure<IMutableModel> IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>
Konstruktory
QueryTypeBuilder(InternalEntityTypeBuilder) |
Ten interfejs API obsługuje infrastrukturę platformy Entity Framework Core i nie jest przeznaczony do użycia bezpośrednio z poziomu kodu. Ten interfejs API może ulec zmianie lub zostać usunięty w przyszłych wersjach. |
Właściwości
Metadata |
Konfigurowany typ zapytania. |
Metody
HasAnnotation(String, Object) |
Dodaje lub aktualizuje adnotację dla typu zapytania. Jeśli adnotacja z kluczem określonym w |
HasBaseType(String) |
Ustawia podstawowy typ tego typu zapytania w hierarchii dziedziczenia. |
HasBaseType(Type) |
Ustawia podstawowy typ tego typu zapytania w hierarchii dziedziczenia. |
HasOne(String, String) |
Konfiguruje relację, w której ten typ zapytania ma odwołanie wskazujące pojedyncze wystąpienie innego typu w relacji. Należy pamiętać, że wywołanie tej metody bez parametrów spowoduje jawne skonfigurowanie tej strony relacji tak, aby nie korzystała z właściwości nawigacji, nawet jeśli taka właściwość istnieje w typie jednostki. Jeśli właściwość nawigacji ma być używana, należy ją określić. Po wywołaniu tej metody należy połączyć wywołanie metody WithMany(String) lub WithOne(String) w pełni skonfigurować relację. Wywołanie tylko tej metody bez wywołania łańcuchowego nie spowoduje wygenerowania prawidłowej relacji. |
HasOne(Type, String) |
Konfiguruje relację, w której ten typ zapytania ma odwołanie wskazujące pojedyncze wystąpienie innego typu w relacji. Po wywołaniu tej metody należy połączyć wywołanie metody WithMany(String) lub WithOne(String) w pełni skonfigurować relację. Wywołanie tylko tej metody bez wywołania łańcuchowego nie spowoduje wygenerowania prawidłowej relacji. |
HasQueryFilter(LambdaExpression) |
Określa wyrażenie predykatu LINQ, które będzie automatycznie stosowane do wszystkich zapytań przeznaczonych dla tego typu zapytania. |
Ignore(String) |
Wyklucza daną właściwość z typu zapytania. Ta metoda jest zwykle używana do usuwania właściwości z typu zapytania, który został dodany przez konwencję. |
Property(String) |
Zwraca obiekt, którego można użyć do skonfigurowania właściwości typu zapytania. Jeśli żadna właściwość o podanej nazwie nie istnieje, zostanie dodana nowa właściwość. Podczas dodawania nowej właściwości z tym przeciążeniem nazwa właściwości musi być zgodna z nazwą właściwości CLR lub pola w typie zapytania. Tego przeciążenia nie można użyć do dodania nowej właściwości stanu w tle. |
Property(Type, String) |
Zwraca obiekt, którego można użyć do skonfigurowania właściwości typu zapytania. Jeśli żadna właściwość o podanej nazwie nie istnieje, zostanie dodana nowa właściwość. Jeśli podczas dodawania nowej właściwości właściwość o tej samej nazwie istnieje w klasie typu zapytania, zostanie ona dodana do modelu. Jeśli żadna właściwość nie istnieje w klasie typu zapytania, zostanie dodana nowa właściwość stanu w tle. Właściwość stanu w tle jest taka, która nie ma odpowiedniej właściwości w klasie typu zapytania. Bieżąca wartość właściwości jest przechowywana w ChangeTracker zamiast przechowywać w wystąpieniach klasy typu zapytania. |
Property<TProperty>(String) |
Zwraca obiekt, którego można użyć do skonfigurowania właściwości typu zapytania. Jeśli żadna właściwość o podanej nazwie nie istnieje, zostanie dodana nowa właściwość. Jeśli podczas dodawania nowej właściwości właściwość o tej samej nazwie istnieje w klasie typu zapytania, zostanie ona dodana do modelu. Jeśli żadna właściwość nie istnieje w klasie typu zapytania, zostanie dodana nowa właściwość stanu w tle. Właściwość stanu w tle jest taka, która nie ma odpowiedniej właściwości w klasie typu zapytania. Bieżąca wartość właściwości jest przechowywana w ChangeTracker zamiast przechowywać w wystąpieniach klasy typu zapytania. |
UsePropertyAccessMode(PropertyAccessMode) |
Ustawia wartość PropertyAccessMode , która ma być używana dla wszystkich właściwości tego typu zapytania. Domyślnie pole kopii zapasowej, jeśli zostanie znalezione zgodnie z konwencją lub zostało określone, jest używane podczas konstruowania nowych obiektów, zazwyczaj gdy jednostki są odpytywane z bazy danych. Właściwości są używane dla wszystkich innych dostępu. Wywołanie tej metody spowoduje zmianę tego zachowania dla wszystkich właściwości tego typu zapytania zgodnie z opisem w wyliczeniem PropertyAccessMode . Wywołanie tej metody zastępuje wszystkie właściwości tego typu zapytania dla dowolnego trybu dostępu ustawionego w modelu. |
Jawne implementacje interfejsu
IInfrastructure<IMutableModel>.Instance |
Model, do którego należy typ zapytania. |
IInfrastructure<InternalEntityTypeBuilder>.Instance |
Pobiera konstruktora wewnętrznego używanego do konfigurowania typu zapytania. |
Metody rozszerzania
GetInfrastructure<T>(IInfrastructure<T>) |
Pobiera wartość z właściwości ukrytej przy użyciu polecenia IInfrastructure<T>. Ta metoda jest zwykle używana przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji. |
HasDiscriminator(QueryTypeBuilder) |
Konfiguruje kolumnę dyskryminującą używaną do identyfikowania typu zapytania każdego wiersza w tabeli, gdy hierarchia dziedziczenia jest mapowana na jedną tabelę w relacyjnej bazie danych. |
HasDiscriminator(QueryTypeBuilder, String, Type) |
Konfiguruje kolumnę dyskryminującą używaną do identyfikowania typu zapytania każdego wiersza w tabeli, gdy hierarchia dziedziczenia jest mapowana na jedną tabelę w relacyjnej bazie danych. |
HasDiscriminator<TDiscriminator>(QueryTypeBuilder, String) |
Konfiguruje kolumnę dyskryminującą używaną do identyfikowania typu zapytania każdego wiersza w tabeli, gdy hierarchia dziedziczenia jest mapowana na jedną tabelę w relacyjnej bazie danych. |
ToView(QueryTypeBuilder, String) |
Konfiguruje widok lub tabelę, do których widok jest mapowy podczas określania wartości docelowej relacyjnej bazy danych. |
ToView(QueryTypeBuilder, String, String) |
Konfiguruje widok lub tabelę, do których widok jest mapowy podczas określania wartości docelowej relacyjnej bazy danych. |
Dotyczy
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla