EntityEntry 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.
Zapewnia dostęp do informacji i operacji śledzenia zmian dla danej jednostki.
Wystąpienia tej klasy są zwracane z metod przy użyciu interfejsu ChangeTracker API i nie są przeznaczone do bezpośredniej konstrukcji w kodzie aplikacji.
[System.Diagnostics.DebuggerDisplay("{_internalEntityEntry,nq}")]
public class EntityEntry : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.ChangeTracking.Internal.InternalEntityEntry>
[System.Diagnostics.DebuggerDisplay("{InternalEntry,nq}")]
public class EntityEntry : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.ChangeTracking.Internal.InternalEntityEntry>
[<System.Diagnostics.DebuggerDisplay("{_internalEntityEntry,nq}")>]
type EntityEntry = class
interface IInfrastructure<InternalEntityEntry>
[<System.Diagnostics.DebuggerDisplay("{InternalEntry,nq}")>]
type EntityEntry = class
interface IInfrastructure<InternalEntityEntry>
Public Class EntityEntry
Implements IInfrastructure(Of InternalEntityEntry)
- Dziedziczenie
-
EntityEntry
- Pochodne
- Atrybuty
- Implementuje
-
IInfrastructure<Microsoft.EntityFrameworkCore.ChangeTracking.Internal.InternalEntityEntry>
Uwagi
Aby uzyskać więcej informacji, zobacz Uzyskiwanie dostępu do śledzonych jednostek w programie EF Core .
Konstruktory
| EntityEntry(InternalEntityEntry) |
Jest to wewnętrzny interfejs API, który obsługuje infrastrukturę Entity Framework Core i nie podlega tym samym standardom zgodności co publiczne interfejsy API. Można go zmienić lub usunąć bez powiadomienia w jakiejkolwiek wersji. Należy używać go bezpośrednio w kodzie z wyjątkową ostrożnością i wiedzieć, że może to spowodować błędy aplikacji podczas aktualizowania do nowej wersji programu Entity Framework Core. |
Właściwości
| Collections |
Zapewnia dostęp do informacji o śledzeniu zmian i ładowania informacji dotyczących wszystkich właściwości nawigacji kolekcji tej jednostki. |
| Context |
Pobiera kontekst śledzący jednostkę. |
| CurrentValues |
Pobiera bieżące wartości właściwości dla tej jednostki. |
| DebugView |
Rozwiń tę właściwość w debugerze, aby uzyskać czytelny dla człowieka widok wpisu. Ostrzeżenie: nie polegaj na formacie ciągów debugowania. Są one przeznaczone tylko do debugowania i mogą zmieniać się dowolnie między wydaniami. |
| Entity |
Pobiera jednostkę śledzona przez ten wpis. |
| InternalEntry |
Jest to wewnętrzny interfejs API, który obsługuje infrastrukturę Entity Framework Core i nie podlega tym samym standardom zgodności co publiczne interfejsy API. Można go zmienić lub usunąć bez powiadomienia w jakiejkolwiek wersji. Należy używać go bezpośrednio w kodzie z wyjątkową ostrożnością i wiedzieć, że może to spowodować błędy aplikacji podczas aktualizowania do nowej wersji programu Entity Framework Core. |
| IsKeySet |
Pobiera wartość wskazującą, czy przypisano wartość klucza tej jednostki. W przypadku kluczy z właściwościami wygenerowanymi przez magazyn (np. mapowaniem na kolumny Identity) wartość zwracana będzie fałsz, jeśli którakolwiek z właściwości wygenerowanych przez magazyn ma wartość domyślną CLR. W przypadku kluczy bez żadnych właściwości wygenerowanych przez magazyn wartość zwracana będzie zawsze prawdziwa, ponieważ każda wartość jest uznawana za prawidłową wartość klucza. |
| Members |
Zapewnia dostęp do informacji i operacji śledzenia zmian dla wszystkich właściwości i właściwości nawigacji tej jednostki. |
| Metadata |
Pobiera metadane dotyczące kształtu jednostki, jej relacji z innymi jednostkami i sposobu mapowania jej na bazę danych. |
| Navigations |
Zapewnia dostęp do informacji i operacji śledzenia zmian dla wszystkich właściwości nawigacji tej jednostki. |
| OriginalValues |
Pobiera oryginalne wartości właściwości dla tej jednostki. Oryginalne wartości to wartości właściwości, które były pobierane z bazy danych. Należy pamiętać, że za każdym razem, gdy rzeczywiste wartości właściwości oryginalnej nie są dostępne (np. jednostka nie została jeszcze utrwalone w bazie danych lub została pobrana w kwerendzie bez śledzenia) spowoduje to ustawienie domyślne dla bieżących wartości właściwości tej jednostki. |
| Properties |
Zapewnia dostęp do informacji i operacji śledzenia zmian dla wszystkich właściwości tej jednostki. |
| References |
Zapewnia dostęp do informacji o śledzeniu zmian i ładowania informacji dla wszystkich właściwości nawigacji odwołania (np. innych niż kolekcja) tej jednostki. |
| State |
Pobiera lub ustawia stan śledzony przez tę jednostkę. Ta metoda ustawia tylko stan pojedynczej jednostki reprezentowanej przez ten wpis. Nie zmienia stanu innych jednostek osiągalnych z tego. Podczas ustawiania stanu jednostka będzie zawsze znajdować się w określonym stanie. Jeśli na przykład zmienisz stan na Deleted jednostkę, zostanie oznaczony do usunięcia niezależnie od jego bieżącego stanu. Różni się to od wywoływania Remove(TEntity) lokalizacji, w której jednostka zostanie rozłączona (a nie oznaczona do usunięcia), jeśli jest w Added stanie. |
Metody
| Collection(String) |
Zapewnia dostęp do śledzenia zmian i ładowania informacji dotyczących właściwości nawigacji kolekcji, która kojarzy tę jednostkę z kolekcją innych jednostek. |
| DetectChanges() |
Skanuje to wystąpienie jednostki w celu wykrycia wszelkich zmian wprowadzonych w danych wystąpienia. DetectChanges() jest zwykle wywoływana automatycznie przez kontekst w celu uzyskania aktualnych informacji na temat pojedynczej jednostki przed zwróceniem informacji o śledzeniu zmian. Zazwyczaj trzeba wywołać tę metodę tylko wtedy, gdy wyłączono metodę AutoDetectChangesEnabled. |
| GetDatabaseValues() |
Wysyła zapytanie do bazy danych pod kątem kopii wartości śledzonej jednostki, ponieważ obecnie istnieją w bazie danych. Jeśli jednostka nie zostanie znaleziona w bazie danych, Należy pamiętać, że zmiana wartości w zwracanym słowniku nie spowoduje zaktualizowania wartości w bazie danych. |
| GetDatabaseValuesAsync(CancellationToken) |
Wysyła zapytanie do bazy danych pod kątem kopii wartości śledzonej jednostki, ponieważ obecnie istnieją w bazie danych. Jeśli jednostka nie zostanie znaleziona w bazie danych, zwracana jest wartość null. Należy pamiętać, że zmiana wartości w zwracanym słowniku nie spowoduje zaktualizowania wartości w bazie danych.
Wiele aktywnych operacji w tym samym wystąpieniu kontekstu nie jest obsługiwanych. Użyj polecenia |
| Member(String) |
Zapewnia dostęp do informacji i operacji śledzenia zmian dla danej właściwości lub właściwości nawigacji tej jednostki. |
| Navigation(String) |
Zapewnia dostęp do informacji i operacji śledzenia zmian dla danej właściwości nawigacji tej jednostki. |
| Property(String) |
Zapewnia dostęp do informacji i operacji śledzenia zmian dla danej właściwości tej jednostki. |
| Reference(String) |
Zapewnia dostęp do śledzenia zmian i ładowania informacji dotyczących odwołania (tj. właściwości nawigacji innej niż kolekcja), która kojarzy tę jednostkę z inną jednostką. |
| Reload() |
Ponownie ładuje jednostkę z bazy danych zastępując wszystkie wartości właściwości wartościami z bazy danych. Jednostka będzie w Unchanged stanie po wywołaniu tej metody, chyba że jednostka nie istnieje w bazie danych, w takim przypadku jednostka będzie mieć Detachedwartość . Na koniec wywołanie funkcji Reload dla Added jednostki, która nie istnieje w bazie danych, jest no-op. Należy jednak pamiętać, że jednostka Dodano mogła jeszcze nie mieć utworzonej stałej wartości klucza. |
| ReloadAsync(CancellationToken) |
Ponownie ładuje jednostkę z bazy danych zastępując wszystkie wartości właściwości wartościami z bazy danych. Jednostka będzie w Unchanged stanie po wywołaniu tej metody, chyba że jednostka nie istnieje w bazie danych, w takim przypadku jednostka będzie mieć Detachedwartość . Na koniec wywołanie funkcji Reload dla Added jednostki, która nie istnieje w bazie danych, jest no-op. Należy jednak pamiętać, że jednostka Dodano mogła jeszcze nie mieć utworzonej stałej wartości klucza. |
Jawne implementacje interfejsu
| IInfrastructure<InternalEntityEntry>.Instance |
Jest to wewnętrzny interfejs API, który obsługuje infrastrukturę Entity Framework Core i nie podlega tym samym standardom zgodności co publiczne interfejsy API. Można go zmienić lub usunąć bez powiadomienia w jakiejkolwiek wersji. Należy używać go bezpośrednio w kodzie z wyjątkową ostrożnością i wiedzieć, że może to spowodować błędy aplikacji podczas aktualizowania do nowej wersji programu Entity Framework Core. |
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 on używany w kodzie aplikacji. IInfrastructure<T> służy do ukrywania właściwości, które nie są przeznaczone do użycia w kodzie aplikacji, ale mogą być używane w metodach rozszerzeń napisanych przez dostawców baz danych itp. |
Dotyczy
Opinia
Prześlij i wyświetl opinię dla