Нужно ли перекладывать DataSet в Custom object ?

V ad
Дата: 01.05.2010 23:08:47
Добрый день.

Получая DataSet (DataTable, DataRow) я перекладываю данные из него , в заранее декларированный обект, и уже самим обьектом биндю гриды, дропдауны итд или передаю его во View в виде Model (это в MVC)

Подскажите, какие есть удобства и недостатки в таком подходе, или лучше сразу биндить датасетом, или собирать в html напрямую из датасета, а не из моего обьекта (в MVC) ?
Starlex
Дата: 02.05.2010 01:11:38
V ad,

Тогда уж лучше выбирать данные напрямую в объект через DatаReader, без DataSet'ов.

Усилия по созданию кода, берущего данные из датасетов и через ридер из бд, одни и те же имхо. Поэтому датасеты в этом случае - лишнее звено, причем довольно жирное для вэба.
V ad
Дата: 03.05.2010 14:21:16
Starlex,

Но специальный класс под принимаемый объект создавать надо, или без обработки биндить?
Я имею ввиду в каких ситуациях это нужно делать.
ShSerge
Дата: 03.05.2010 14:30:53
V ad
Но специальный класс под принимаемый объект создавать надо, или без обработки биндить?

Здесь форум - русскоязычный. Кстати, даже на том самом дурном сленге, у Вас в этой фразе три ошибки.
S_A_V_e
Дата: 04.05.2010 13:08:04
Проще не перекладывать , а использовать типизированные датасеты. Они прекрасно заменяют custom объекты (для получения и связывания данных естественно) и при этом легко биндятся и заполняются стандартными средствами.
Недостатки при "перекладывании" данных:
1. Custom объекты начинают "плодится". Т.е. приходится создавать объект под каждую конкретную задачу. В итоге их образуется огромное количество и они начинают дублировать то что уже есть. Т.е. становится проще создать новый объект для задачи , чем искать объект с подходящим набором свойств. Набор полей в типизированном датасете всегда можно легко просмотреть и их не требуется такое количество.
2. Неудобства с заполнением. Требуется писать какую то прослойку для переливания данных из датасета или ридера в объект.
Зритель с попкорном 5
Дата: 04.05.2010 14:19:51
S_A_V_e,

Со временим вы дойдёте до полностью противоположной точки зрения.
V ad
Дата: 04.05.2010 17:39:25
S_A_V_e

1. Custom объекты начинают "плодится". Т.е. приходится создавать объект под каждую конкретную задачу. В итоге их образуется огромное количество и они начинают дублировать то что уже есть. Т.е. становится проще создать новый объект для задачи , чем искать объект с подходящим набором свойств. Набор полей в типизированном датасете всегда можно легко просмотреть и их не требуется такое количество.
2. Неудобства с заполнением. Требуется писать какую то прослойку для переливания данных из датасета или ридера в объект.


В принципе, сейчас я так и делаю, поэтому и вопрос. Программисты на SQL регулярно кидают мне процедуры с отчетами, которые надо подключить на веб, соответственно, под каждый тип отчета приходится создавать свой объект, который потом нигде больше, кроме этого отчета не используется.
Пререливаю из датасета в объект в бизнес-логике. А только потом на контроллер передаю. Вот мне и кажется, что делаю я лишнюю операцию. Хотелось узнать, в каких ситуациях, преобразование в объект, может быть полезным?
Зритель с попкорном 5
Дата: 04.05.2010 17:44:53
V ad,

Когда нужна строгая типизация и контроль, я для отображения полей в отчёте, лично я использую DataTable