Как я могу создать глобальную функцию, которая будет запускать мою процедуру хранения
Всем Привет...
Я собираюсь создать глобальную функцию в c#, которая будет выполнять мою хранимую процедуру. Когда я когда-нибудь вызову эту функцию, она выполнит мою процедуру.
Ниже я создал функцию, которая даст мне правильные результаты, но эта функция покажет мне только тот результат процедуры, параметры которого будут соответствовать ей. я хочу, чтобы эта функция была глобальной.
Что я уже пробовал:
Моя функция-это рев
public static void exec_proc(string proc,string param) { SqlCommand cmd = new SqlCommand(proc,DBConnection()); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@DESCRIPTION", SqlDbType.VarChar,30).Value = param; cmd.ExecuteNonQuery(); }
у меня есть вызов этой функции в моем asp.net страница выглядит следующим образом это работает для меня
дБ.exec_proc("ДБО.CREATE_CATAGORY", txt_Cat_Name.Текст);
F-ES Sitecore
Ваш вопрос не имеет особого смысла. Если вы хотите вызвать другую процедуру, которая не нуждается в параметрах, просто обновите свой код, чтобы сделать это? Непонятно, о чем именно вы спрашиваете.
Muhammd Aamir
Ok Thankx F-ES так же, как и выше, функция примет 2 парама пусть предположим, что я должен вызвать эту функцию, где у меня есть 3 парама, что мне нужно будет сделать ???
F-ES Sitecore
общественная статический недействительным exec_proc(строка прок,строковый параметр, строковый параметр param2)
{
SqlCommand cmd = new SqlCommand(proc, DBConnection());
УМК.CommandType = CommandType.Хранимая процедура;
УМК.Параметры.Добавить ("описание", значения sqldbtype.Тип varchar,30).Значение = парам;
УМК.Параметры.Добавить("@MyOtherParam", Значения Sqldbtype.Тип varchar,30).Значение = параметр param2;
УМК.Метод executenonquery();
}
Muhammd Aamir
F-ES Sitecore Спасибо за то, что поделились со мной своими знаниями, но проблема все та же... Пожалуйста, покажите мне функцию, которая будет делать то же самое без создания новой функции
F-ES Sitecore
общественная статический недействительным exec_proc(строка прок,строковый параметр, строковый параметр param2 = нуль)
{
if (string.IsNullOrWhiteSpace(param2))
{
// param2 не был поставлен
}
ещё
{
// параметр param2 было поставлено
}
}
Muhammd Aamir
Как я могу обновить код вы имеете в виду что мне нужна отдельная функция которая будет выполнять процедуру без парамера
F-ES Sitecore
Вы можете либо иметь отдельную функцию, либо использовать ту же функцию и решать, что делать внутри этой функции, основываясь на аргументах, которые вы передаете.
Muhammd Aamir
Хорошо спасибо я постараюсь
ZurdoDev
Одним из способов было бы передать список командных параметров. Я не рекомендую этого делать. Просто напишите функцию для каждого sp.
Muhammd Aamir
Ряндев совершенно прав... я сделал это с помощью списка массивов, и он работает очень эффективно