Porady: pobieranie określonych wersji DataRow
Gdy zostaną wprowadzone zmiany do wierszy danych, zestaw danych zachowuje zarówno oryginał (Original) i nowe (Current) wersje wiersza.Na przykład, przed wywołaniem metody AcceptChanges, aplikacja można uzyskać dostęp do różnych wersji rekordu (jak określono w wyliczeniu DataRowVersion) i odpowiednio przetworzyć zmiany.
[!UWAGA]
Istnieją różne wersje wiersza po jego edycji i przed wywołaniem metody AcceptChanges.Po wywołaniu metody AcceptChanges, bieżąca i oryginalna wersja są takie same.
Przekazywanie DataRowVersion wartości wraz z indeks kolumny (lub nazwą kolumny jako ciąg) zwraca wartość z tej kolumny określonego wiersza wersji.Zmieniona kolumna jest określana w trakcie ColumnChanging i ColumnChanged zdarzenia, więc to dobry moment, aby sprawdzić różniące się wersje wierszy do celów sprawdzania poprawności.Jednakże, jeśli ograniczenia zostały tymczasowo zawieszone, te zdarzenia nie zostaną wywołane i trzeba będzie programowo określić kolumny, które uległy zmianie.Można to zrobić przez iterację Columns zbieranie i porównywanie różnych DataRowVersion wartości.
Uzyskiwanie dostępu do oryginalnej wersji DataRow
Aby uzyskać oryginalną wersję rekordu
Uzyskaj dostęp do wartości kolumny przechodząc w DataRowVersion wiersza, który należy zwrócić.
W poniższym przykładzie pokazano, jak można użyć DataRowVersion wartości, aby uzyskać oryginalną wartość CompanyName w DataRow:
Dim originalCompanyName = NorthwindDataSet1.Customers(0)( "CompanyName", DataRowVersion.Original).ToString()
string originalCompanyName; originalCompanyName = northwindDataSet1.Customers[0] ["CompanyName", DataRowVersion.Original].ToString();
Uzyskiwanie dostępu do bieżącej wersji DataRow
Aby uzyskać bieżącą wersji rekordu
Uzyskaj dostęp do wartości kolumny i dodaj parametr do indeksu wskazującego, którą wersję wiersza należy zwrócić.
W poniższym przykładzie pokazano, jak można użyć DataRowVersion wartości, aby uzyskać bieżącą wartość CompanyName w DataRow:
Dim currentCompanyName = NorthwindDataSet1.Customers(0)( "CompanyName", DataRowVersion.Current).ToString()
string currentCompanyName; currentCompanyName = northwindDataSet1.Customers[0] ["CompanyName", DataRowVersion.Current].ToString();
Zobacz też
Koncepcje
Sprawdzanie poprawności danych
Powiązywanie formantów formularzy systemu Windows z danymi w Visual Studio
Przygotowywanie aplikacji na otrzymywanie danych
Pobieranie danych do aplikacji
Powiązywanie kontrolek z danymi w Visual Studio