2008-12-10 2 views
1

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

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

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

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

ответ

3

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

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

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

+0

Я пытаюсь использовать DataSets в первый и использовать проприетарные VS-инструменты, но я просто не хотел, чтобы меня так привязывали. У меня также были некоторые проблемы с DataSets, когда дело касалось полей псевдонимов в моих запросах. – beardog 2008-12-10 18:27:33

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