это может показаться легким делом, но, надеюсь, после того, как я объясню свою проблему, вы поймете, почему я спрашиваю об этом.
возможно ли иметь метод, который создает метод и его аргументы?
проблема:
в моем текущем проекте мне приходится много раз вызывать различные операторы sql, которые ничем не отличаются.
например, у меня есть один, где я вставляю несколько новых строк, но толькоимеет 2 столбца и другой, который также вставляет новые строки, но имеет 12 столбцов.
Я создал класс с именем utils.cs, и там я отсортировал много «удобных» методов, таких как методы проверки, которые проверяют числовыеввод в текстовые поля и т. д.
так что я подумал, что вместо того, чтобы везде писать методы sql, я создам один там и вызываю его, когда мне нужно, у меня есть, но в настоящее время это выглядит так:
public static string getInsertSQL(string tablename, string colOne, string colTwo, string colThree, string colFour, string colFive, string colSix, string colSeven, string colEight, string colNine, string colTen, string colEleven, string colTwelve,bool active, string valueOne, string valueTwo, string valueThree, string valueFour, string valueFive, string valueSix, string valueSeven, string valueEight, string valueNine, string valueTen, string valueEleven)
{
string strSQL = "";
strSQL += "INSERT INTO " + tablename;
strSQL += "(" + colOne + " " + colTwo + " " + colThree + " " + colFour + " " + colFive + " " + colSix + " " + colSeven + " " + colEight + " " + colNine + " " + colTen + " " + colEleven + " " + colTwelve + " )";
strSQL += " values ("+active+", " + valueOne + " " + valueTwo + " " + valueThree + " " + valueFour + " " + valueFive + " " + valueSix + " " + valueSeven + " " + valueEight + " " + valueNine + " " + valueTen + " " + valueEleven + " )";
return strSQL;
}
Как вы можете видеть, это довольно беспорядочно
, поэтому я подумал, можно ли вообще написать метод, который бы спорилt из того, сколько столбцов нужно было вставить, а затем создать метод с таким количеством аргументов.
Я надеюсь, что вы можете видеть, к чему я клоню, и не просто звучать как плей!
заранее спасибо