LocalView<TEntity> 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.
Kolekcja, która pozostaje zsynchronizowana z jednostkami danego typu śledzonym przez DbContextobiekt . Wywołaj wywołanie Local , aby uzyskać widok lokalny.
Ten widok lokalny pozostanie zsynchronizowany, ponieważ jednostki zostaną dodane lub usunięte z kontekstu. Podobnie jednostki dodane do lub usunięte z widoku lokalnego zostaną automatycznie dodane do lub usunięte z kontekstu.
Dodanie jednostki do tej kolekcji spowoduje, że będzie ona śledzona w Added stanie przez kontekst, chyba że jest już śledzona.
Usunięcie jednostki z tej kolekcji spowoduje, że zostanie ona oznaczona jako Deleted, chyba że została wcześniej w stanie Dodano, w takim przypadku zostanie odłączona od kontekstu.
Kolekcja implementuje INotifyCollectionChanged, INotifyPropertyChangingi INotifyPropertyChanging takie, że powiadomienia są generowane po rozpoczęciu śledzenia jednostki przez kontekst lub jest oznaczony jako Deleted lub Detached.
Nie używaj tego typu bezpośrednio do powiązania danych. Zamiast tego wywołaj ToObservableCollection() powiązanie WPF lub ToBindingList() winForms.
public class LocalView<TEntity> : System.Collections.Generic.ICollection<TEntity>, System.Collections.Generic.IEnumerable<TEntity>, System.Collections.Specialized.INotifyCollectionChanged, System.ComponentModel.INotifyPropertyChanged, System.ComponentModel.INotifyPropertyChanging where TEntity : class
public class LocalView<TEntity> : System.Collections.Generic.ICollection<TEntity>, System.Collections.Generic.IEnumerable<TEntity>, System.Collections.Specialized.INotifyCollectionChanged, System.ComponentModel.IListSource, System.ComponentModel.INotifyPropertyChanged, System.ComponentModel.INotifyPropertyChanging where TEntity : class
type LocalView<'Entity (requires 'Entity : null)> = class
interface ICollection<'Entity (requires 'Entity : null)>
interface seq<'Entity (requires 'Entity : null)>
interface IEnumerable
interface INotifyCollectionChanged
interface INotifyPropertyChanged
interface INotifyPropertyChanging
type LocalView<'Entity (requires 'Entity : null)> = class
interface ICollection<'Entity (requires 'Entity : null)>
interface seq<'Entity (requires 'Entity : null)>
interface IEnumerable
interface INotifyCollectionChanged
interface INotifyPropertyChanged
interface INotifyPropertyChanging
interface IListSource
Public Class LocalView(Of TEntity)
Implements ICollection(Of TEntity), IEnumerable(Of TEntity), INotifyCollectionChanged, INotifyPropertyChanged, INotifyPropertyChanging
Public Class LocalView(Of TEntity)
Implements ICollection(Of TEntity), IEnumerable(Of TEntity), IListSource, INotifyCollectionChanged, INotifyPropertyChanged, INotifyPropertyChanging
Parametry typu
- TEntity
Typ jednostki w widoku lokalnym.
- Dziedziczenie
-
LocalView<TEntity>
- Implementuje
Uwagi
Aby uzyskać więcej informacji , zobacz Widoki lokalne śledzonych jednostek w programie EF Core .
Konstruktory
| LocalView<TEntity>(DbSet<TEntity>) |
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
| Count |
Liczba jednostek typu TEntity, które są śledzone i nie są oznaczone jako Usunięte. |
| IsReadOnly |
Fałsz, ponieważ kolekcja nie jest tylko do odczytu. |
Metody
| Add(TEntity) |
Dodaje nową jednostkę do elementu DbContext. Jeśli jednostka nie jest śledzona lub jest obecnie oznaczona jako usunięta, zostanie ona śledzona jako Added. Należy pamiętać, że śledzona jest tylko dana jednostka. Wszystkie powiązane jednostki wykrywalne z danej jednostki nie są śledzone automatycznie. |
| Clear() |
Oznacza wszystkie jednostki typu TEntity śledzone przez DbContext element jako Deleted. Jednostki, które są obecnie oznaczone jako Added będą oznaczone jako Detached , ponieważ stan Dodano wskazuje, że jednostka nie została zapisana w bazie danych i dlatego nie ma sensu próbować usunąć jej z bazy danych. |
| Contains(TEntity) |
Zwraca wartość |
| CopyTo(TEntity[], Int32) |
Kopie do tablicy wszystkie jednostki typu TEntity, które są śledzone i nie są oznaczone jako Usunięte. |
| GetEnumerator() |
Zwraca wartość dla IEnumerator<T> wszystkich śledzonych jednostek typu TEntity, które nie są oznaczone jako usunięte. |
| OnCollectionChanged(NotifyCollectionChangedEventArgs) |
CollectionChanged Zgłasza zdarzenie. |
| OnPropertyChanged(PropertyChangedEventArgs) |
PropertyChanged Zgłasza zdarzenie. |
| OnPropertyChanging(PropertyChangingEventArgs) |
PropertyChanging Zgłasza zdarzenie. |
| Remove(TEntity) |
Oznacza daną jednostkę jako Deleted. Jednostki, które są obecnie oznaczone jako Added będą oznaczone jako Detached , ponieważ stan Dodano wskazuje, że jednostka nie została zapisana w bazie danych i dlatego nie ma sensu próbować usunąć jej z bazy danych. |
| ToBindingList() |
Zwraca implementację BindingList<T> , która pozostaje zsynchronizowana z tą kolekcją. Użyj tego dla powiązania danych WinForms. |
| ToObservableCollection() |
Zwraca implementację ObservableCollection<T> , która pozostaje zsynchronizowana z tą kolekcją. Użyj tego dla powiązania danych WPF. |
Zdarzenia
| CollectionChanged |
Występuje, gdy zawartość kolekcji ulegnie zmianie, ponieważ jednostka została bezpośrednio dodana lub usunięta z kolekcji albo dlatego, że jednostka zaczyna być śledzona, albo ponieważ jednostka jest oznaczona jako Usunięta. |
| PropertyChanged |
Występuje, gdy właściwość tej kolekcji (na przykład Count) zmienia się. |
| PropertyChanging |
Występuje, gdy właściwość tej kolekcji (na przykład Count) zmienia się. |
Jawne implementacje interfejsu
| IEnumerable.GetEnumerator() |
Zwraca wartość dla IEnumerator<T> wszystkich śledzonych jednostek typu TEntity, które nie są oznaczone jako usunięte. |
| IListSource.ContainsListCollection |
Pobiera wartość wskazującą, czy kolekcja jest kolekcją obiektów System.Collections.IList.
Zawsze zwraca wartość |
| IListSource.GetList() |
Ta metoda jest wywoływana przez struktury powiązań danych podczas próby powiązania danych bezpośrednio z elementem LocalView<TEntity>. Ta implementacja zawsze zgłasza wyjątek, ponieważ LocalView<TEntity> nie utrzymuje uporządkowanej listy z indeksami. Zamiast tego wywołaj ToObservableCollection() powiązanie WPF lub ToBindingList() winForms. |
Dotyczy
Opinia
Prześlij i wyświetl opinię dla