Четверг Мая 17 , 2012
TEXT_SIZE
   


Возможность генерирования данных без контроля типов

Индекс материала
Возможность генерирования данных без контроля типов
Страница 2
Страница 3
Страница 4

Предположим, что ваше приложение использует объекты DataSet со строгим контролем типов, и требуется отсылать их серверу промежуточного уровня для передачи изменений в БД. Метод GetChanges объекта DataSet со строгим контролем типов позволяет создать новый объект DataSet, содержащий только измененные записи. Однако этот метод возвращает объект DataSet без контроля типов. Удастся ли преобразовать обычный объект DataSet, возвращаемый методом GetCbanges, в объект DataSet со строгим контролем типов?

Безусловно да, что и подтвержда ют следующие фрагменты: Visual Basic. NET Dim dsStrongAURows As New Chapter9() 'Заполняем объект DataSet со строгим контролем типов 'и изменяем часть его записей Dim dsUntyped As DataSet dsUntyped = dsStrongAllRows. GetChanges() Dim dsStrongModifiedRows As Cnapter9 dsStrongHodifiedRows = CType(dsUntyped, Chapter9) Visual C#.NET Chapter9 dsStrongAllRows = new Chapter9(); //Заполняем объект DataSet со строгим контролен типов //и изменяем часть его записей DataSet dsUntyped; dsUntyped = dsStrongAllRows. GetChanges(); Chapter9 dsStrongModifiedflows; dsStrongHodifiedRows = (Chapter9) dsUntyped; У объекта DataSet со строгим контролем типов есть и другие методы, которые возвращают данные без контроля типов. Так, метод Select возвращает массив объектов DataRow. Преобразовать его целиком в массив объектов DataSet со строгим контролем типов нельзя, однако это можно сделать с отдельными объектами DataRow.

То же верно и для объекта DataView. Обратиться к его содержимому напрямую через классы со строгим контролем типов нельзя, но, используя показанный ниже код, удается преобразовать объект DataRow. возвращаемый свойством Row объекта DataRowView, в класс со строгим контролем типов: Visual Basic. NET Dim dsStrong As New Chapter9() 'Заполняем объект DataSet со строгим контролем типов 'и изменяем часть его записей Dim vueCustomers As New DataViewfdsStrong. Customers) Dim rowCustomer As Chapters. CustomersRow rowCustomer = CType(vueCustomers(Q).Row, Chapters. CustomersRow) Visual C#.NET Chapter9 dsStrong = new Chapter9(); //Заполняем объект DataSet со строгим контролем типов //и изменяем часть его записей DataView vueCustomers = new DataView(dsStrong.

Customers); Chapter9.CustomersRow rowCustomer; rowCustomer = (Chapters. CustonersRow) vueCustomers(0).Row; Выбор способа разработки Так что же подходит вам больше всего? Объекты DataSet со строгим контролем типов ускоряют разработку приложения и упрощают написание эффективного кода. Тем не менее их производительность невысока.

Написав грамотный код на основе объектов DataSet без контроля типов, вы создадите приложение с более высокой производительностью. Все зависит от назначения вашей программы. Если важнее высокая производительность, используйте только обычные объекты DataSet. Если же несколько часов, сэкономленных при разработке, сопоставимы со степенью падения производительности, обратите внимание на объекты DataSet со строгим контролем типов, Вопросы, которые стоит задавать почаще Вопрос. Я хочу обеспечить максимальную производительность своих компонентов промежуточного уровня и использую на сервере объекты DataSet без контроля типов.



Добавить комментарий


Защитный код
Обновить

Рейтинг пользователей: / 0
ХудшийЛучший 

Метео

Войти

Голосование

Идеальный вариант проведения новогодней корпоративной вечеринки - это…

Сейчас на сайте

Сейчас 6 гостей онлайн