2014-11-18 5 views
0

В настоящее время я использую SqlHelper.ExecuteDataSet(string storedProcedure, Object[] parameters); для извлечения данных из базы данных. Проблема заключается в том, что порядок имеет значение. Недавно я отвлек часть функциональности, которая производит Object[] parameters, что заставило их немного разобраться. Мне было интересно, есть ли способ вызвать эту функцию (упрощенно), указав имена?SqlHelper ExecuteDataSet с именованными параметрами?

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

Вопрос: Есть ли способ вызвать SqlHelper.ExecuteDataSet с набором именованных параметров? (Например, с Dictionary<String, Object> или что-то в этом роде)?

+0

Ummm 'Microsoft.ApplicationBlocks.Data.SqlHelper' К сожалению, не понимают. – Shelby115

+0

Я не могу найти много документации, выполнив поиск. Быстрый google показывает [эту страницу] (ftp://63.240.151.59/Inetpub/agcdirect/CodeCommentReport/Microsoft.ApplicationBlocks.Data/CWP24.HTM), который, кажется, предполагает, что существует перегрузка, которая принимает массив из [SqlParameters] (http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlparameter%28v=vs.110%29.aspx), который можно назвать и т. д. – Bridge

ответ

0

SqlHelper устарел. Он был заменен объектом базы данных из MS Enterprise Library, но это также устарело. Какую функциональность вы пытаетесь вытеснить? Возможно, вам лучше создать собственный уровень абстракции с использованием Enterprise Library в качестве отправной точки.

+0

Мы используем его для запуска запросов. Он работает просто отлично, но параметры не в порядке. Думаю, мне нужно будет сделать функцию для того, чтобы самим заказать параметры? (Для процедур, которые я не могу изменить для заказа). – Shelby115

+0

Да. Мне любопытно посмотреть, какие изменения вы внесли, чтобы заставить его выйти из строя. –

+0

Простая абстракция. Я не понял, что у некоторых был порядок «P1 P2 P3 P4 P5», а другие имели порядок «P1 P5 P2 P3 P4». Я смог исправить большинство экземпляров в StoredProcedures, но есть пара, к которой я не могу трогать. – Shelby115

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