2009-04-29 5 views
2

Я играю с назначением DataSource ASP.NET WebControl, когда обрабатываю его событие DataBinding. Для общей логики привязки данных на моих страницах, похоже, хорошо работает в организации вещей.Назначение источника данных во время события привязки данных

Какие аргументы в пользу этого не делаются?

ответ

2

Только от верхней части моей головы, я бы поспорил против делать это по двум причинам:

1) Конструкция запахов 2) затемняет то, что на самом деле происходит

Для # 1, я говорю это потому что для обработки события привязки данных он должен уже начать связываться с чем-то уже. Чтобы изменить то, что он связывает в середине потока, не то, что я бы назвал идеальным дизайном.

Это приводит к # 2, в том случае, если кто-то создает один из ваших элементов управления и вызывает на нем .DataBind(), и он внутренне начинает привязываться к чему-то еще, совершенно непонятно вызывающему, что происходит.

Хотя я не смотрел на это с технической точки зрения, мне кажется, что вы бы подняли возможность рекурсивного бесконечного цикла привязки данных. Думаю, мне действительно нужно увидеть какой-то код, чтобы узнать, приемлемо ли то, что вы делаете, или если есть лучшие способы сделать это.

+0

Я понял, что вы подразумеваете под № 1. Для # 2 ... Я не делаю этого для своих UserControls, но для обычных ASP.NET WebControls у меня есть на моих страницах. Для моего UserControls я бы создал новое событие «NeedDataSource» (например, элементы управления Telerik), которые будут повышаться, если DataSource имеет значение null при вызове DataBind. –

Смежные вопросы