|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.07.2011, 03:56 | #1 |
Форумчанин
Регистрация: 29.10.2009
Сообщений: 259
|
Метод с переменным количеством аргументов
Разрабатываю на языке C# клиентское приложение для SQL-базы данных, состоящей из двух таблиц. Для добавления данных в таблицы использую хранимые процедуры, которые вызываю с помощью класса OleDbCommand. Этот синтаксис для первой таблицы выглядит следующим образом:
Код:
Код:
Код:
Может кто подскажет каким образом можно решить указанную проблему?
Из всех классических книг, посвященных программированию, ненавижу всего одну - русский перевод книги Роберта Седжвика-"Фундаментальные алгоритмы C++". Предпочитаю читать её в оригинале.
|
18.07.2011, 07:21 | #2 |
Форумчанин
Регистрация: 06.05.2011
Сообщений: 287
|
Только если params object, а дальше приводить. Класс предпочтительнее создать.
|
18.07.2011, 08:51 | #3 |
JAVA BEAN
Участник клуба
Регистрация: 22.04.2007
Сообщений: 1,329
|
Можно создать метод с параметрами по умолчанию, а там уже использовать их как именованные.
|
19.07.2011, 04:28 | #4 |
Форумчанин
Регистрация: 29.10.2009
Сообщений: 259
|
Порылся вчера немного на MSDN и понял, что имена параметров можно не указывать, главное, чтобы они вставлялись в той же последовательности, в которой они идут в хранимой процедуре. В итоге получил следующий вполне работоспособный код:
Код:
Благодаря синтаксису вышеописанного метода, мы можем без особых хитростей вызвать его с любым количеством аргументов. Например: Код:
Код:
Из всех классических книг, посвященных программированию, ненавижу всего одну - русский перевод книги Роберта Седжвика-"Фундаментальные алгоритмы C++". Предпочитаю читать её в оригинале.
Последний раз редактировалось Mixim; 19.07.2011 в 04:39. Причина: Дополнение |
19.07.2011, 11:27 | #5 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
> т.е. приводим наши числа к строке
логичнее тогда было бы, наверно, сделать aValues типа object, а не String, чтобы можно было передавать произвольные типы. Правда, справится ли AddWithValue() с произвольным объектом — это вопрос.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
19.07.2011, 14:17 | #6 |
Форумчанин
Регистрация: 29.10.2009
Сообщений: 259
|
Спасибо за совет, он помог решить напрямую, а не "обходными путями" одну небольшую проблему при вызове моего метода и кроме того, использование типа Object действительно является более рациональным решением, чем String . Метод AddWithValue() вроди бы при использовании типа Object и при передаче непосредственно в качестве аргументов типов String и Double отлично все "переваривает".
Из всех классических книг, посвященных программированию, ненавижу всего одну - русский перевод книги Роберта Седжвика-"Фундаментальные алгоритмы C++". Предпочитаю читать её в оригинале.
Последний раз редактировалось Mixim; 19.07.2011 в 14:20. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ф-я с переменным количеством параметров.. | Lucky777 | Помощь студентам | 19 | 02.06.2011 23:54 |
Функции с произвольным количеством и типом аргументов. | Crudelis | Общие вопросы C/C++ | 1 | 16.06.2010 00:10 |
Простейшая задача на функцию со сменным количеством аргументов | iFireFly | Общие вопросы C/C++ | 1 | 07.01.2010 12:21 |
Циклы с переменным количеством шагов | Froost | Общие вопросы Delphi | 1 | 10.11.2009 19:30 |
Нужна помощь в решении задачек, тема "Циклы с переменным количеством шагов" | DJ Kost | Помощь студентам | 3 | 16.01.2009 13:26 |