ООП дизайн вопрос - отслеживание многих похожих вещей - PullRequest
1 голос
/ 10 декабря 2008

Я разрабатываю слой доступа к данным для приложения C # / ASP.net, и у меня есть вопрос, касающийся обработки параметров в SQL-запросах.

В тот момент, когда запросу требуется динамически установленный параметр для предложения Where, я должен (1) определить переменную для хранения значения, (2) добавить новый QueryStringParameter в коллекцию SelectParameters SqlDataSource, (3) установить временное значение параметра при вызове метода, содержащего запрос, (4) и установите значение параметра в событии Selecting для SqlDataSource.

У меня есть список из ~ 20 параметров, которые используются в различных запросах, и кажется, что я должен иметь возможность определить каждый из них один раз и просто указать метод, который нужно использовать (и соответствующим образом обновить его значение).

Есть ли хороший способ настроить это?

1 Ответ

3 голосов
/ 10 декабря 2008

Мой любимый способ сделать это - настроить источник данных объекта, а затем в своем табличном адаптере вы можете добавлять запросы ко всем различным запросам, которые вы хотите выполнить, с различными параметрами, необходимыми для различных вариантов выбора. Это дает вам возможность игнорировать фактические параметры и просто использовать класс для вызова методов и передачи соответствующих параметров. Вы также получаете преимущество в том, что вам возвращается объект первого класса или коллекция объектов, вместо того, чтобы беспокоиться о типизации каждого из возвращаемых значений. Этот метод работает плохо, хотя возвращаемая схема изменяется для каждого запроса.

Эта статья из блога Скотта Гу, кажется, гораздо глубже охватывает то, о чем я говорю, но, честно говоря, я только просмотрел ее:

http://weblogs.asp.net/scottgu/archive/2006/01/15/435498.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...