Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Вебмастеру -> Сеппа Д. -> "Microsoft ADO.NET" -> 140

Microsoft ADO.NET - Сеппа Д.

Сеппа Д. Microsoft ADO.NET — М.: Русская Редакция, 2003. — 640 c.
ISBN 5-7502-0223-2
Скачать (прямая ссылка): mcrsftado2003.pdf
Предыдущая << 1 .. 134 135 136 137 138 139 < 140 > 141 142 143 144 145 146 .. 260 >> Следующая

сштп объект Data View. Если изменить значение свойства Table, свойствам ШюРИШ и объекта задаются соответствующие значения по умол-
Чтобы Задать свойство Table, используют конструктор объекта DataView.
На момент написания данной книги свойству Table не разрешалось задавать объект DataTable, которого — пустая строка; в противном случае
генерировалось исключение.
чанию.
Методы объекта DataView
Методы объекта DataView описаны в табл. 8-3.
Таблица 8-3. Методы объекта DatsVlew
Метод
Описание
AditNew Reginlnit СоруТо Delete
новый объект
содержимого объекта БагаПеш Копирует объекты ОаПиЧоиХЧеиъ массив Помечает объект ШШЫЖкж: как удаленный
внесение кнакрсжшиня изменений объект БагаМем Выполняет в объекте БШаПеш поиск отдельной записи лаииых
Endliut
Find
ГЛАВА 8 Сортировка, поиск, фильтрация 3l 1
Метод Описание
FindRows Выполняет в поиск нескольких записей данных
Cetb'numerator Возвращает объект ШШШгаШгдля перечисления записей, доступ-
пых через объект Ва1аКеу/
Методы . и Delete
Методы AddNew и / ч7<-7<- позволяют добавлять и удалять записи данных из вого объекта ВМйТШШ. Метод AddNew возвращает новый объект DataRow View. Задав значения нужных полей, вы можете вызвать метод ШгиШШ объекта DataRowView и добавить запись данных в базовый объект DataTable.
Метод Delete принимает порядковый номер записи в объекте DataView и позволяет удалить эту запись. Если у вас есть ссылка на объект DidaRow или DataRowView, для удаления записи стоит применить метод Delete одного из этих объектов. Помните, что в этом случае запись просто помечается как удаленная. Чтобы на самом деле удалить ее из объекта DataTable, вызовите (объек-
та DataRow, DataTable или DataSet, содержащего ряд) или передайте изменения в БД с помощью объекта DataAdapter.
Методы и Fndinit
Если вам необходимо изменить значения нескольких свойств объекта DataView,
но вы не хотите, чтобы эти изменения сказались на доступных через этот объект данных, пока вы не измените значения всех нужных свойств, воспользуйтесь методами Beginlnit и Endln.it.
Представьте, например, что объект DataView связан с определенным объектом DataTable и значение свойства ШЮШвг объекта DataView таково, что через последний доступна лишь небольшая часть записей данных. Содержимое объекта DataView выводится в элементе управления DaHGria Windows-форме, и по указанию пользователя вам требуется изменять значения свойств Table nRowEilter обьек-та DataView. В данной ситуации код, изменяющий значения свойств объекта Data-Щ&® следует поместить в вызовы методов Beginlnit и Endlnit объекта DataView, чтобы запретить элементе управления DataGrid моментально отображать все длинен
нового объекта DataTable,
Метод То
Объект DataView предоставляет метод С ору То. Он функционирует аналогично методу СоруТо объекта Array и позволяет копировать объекты DataRowView, доступные через объект DataView. в массив.
Примечание Возможно, разработчики, имеющие опыт работы с RDO и
ADO, сочтут, что метод СоруТо похож на метод GetRows, возвращающий содержимое структуры данных в виде двухмерного массива. Увы, это не гзк.
Если честно, я не знаю, чем вам поможет массив объектов DataRowView. Однако все же давайте рассмотрим фрагмент кода, в котором используется метод СоруТо, на если кто-то сумеет найти ему применение. Вероятно, этот человек вспом-
нит. как помог ему данный фрагмент кода, и поблагодарит меня. Я принимаю и наличные
312
Часть III Автономная работа с данными: объект DataSet модели ADO.NET
Visual Basic .MET
Dim As New OataTat)le<"Customers")
Dim vuo As DataView vue = New DataView(tbl) Dim aRows As DataRowView()
aRows •= Array.CreateInstance(GetType(DatafiowView), vue.Count) vue.CopyTo(aRcw5, 0)
Visual C# -NET
DataTable tbl new DataTableCCustoiaers- ):
DataView vue;
vue = new DataView(tbl):
DataRowView[] aRows;
aRows = Array.CreateInstance(typeof(DataRowVlew), vue.Count); vue.CopyTo(aRows, 0);
Методы Find и FindRows
Методы Find и FindRows позволяют искать записи данных в объекте DataView. Они оба перегружены и принимают отдельное значение или массив значений. Объект DataView на основе указанных значений осуществляет поиск среди своего содержимого по столбцам, перечисленным в свойстве Sort:
Visual Basic NET
Dim strConn As String = '-Provider=S0L0LFD3; Data Source=(local)\NetSCK;" &
"Initial Catalog=Northwind;Trusted_Connection=Yes;" Dim strSQL As String = "SELECT CustomerlD, CotnpanyName, ContactName, " & _
"Phone, City, Country FROM Customers" Dim da As New OleDbDataAdapterCstrSOL, strConn) Dim tbl As New DataTableCXustomers") da.Flll(tbl)
Dim vue As New DataView(tbl)
the Find method to locate a &
"based on the ContactName column") vue.Sort = "ContactName"
Dim intlndex As Integer = vue.Find("Fran Wilson") If intlndex = -1 Then
Console.WrlteLine(vbTab & "Row not found!")
Else
&
End If
Console.WriteLine()
the FindRows method to locate &
"based on the Country column")
vue.Sort = "Country"
ГЛАВА 8 Сортировка, поиск, фильтрация
Предыдущая << 1 .. 134 135 136 137 138 139 < 140 > 141 142 143 144 145 146 .. 260 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100