Witajcie.
Piszę własny mechanizm obsługi bazy danych,
Mam metodę wykonującą select:
public override DataTable ExecuteSelectSQL(string cmd, params object[] param)
{
SqlCommand sqlCommand = CreateSqlCommand(cmd);
int index = 0;
foreach( object obj in param )
{
index++;
sqlCommand.Parameters.AddWithValue("P" + index, obj);
}
return FillTable(sqlCommand);
}
Niestety owy kod nie działa, gdyż nazwa parametru (np. P1, P2 itd.)
nie jest adekwatna do tego co faktycznie programista chce wyszukać (np. select * from users where id = @id)
Mój mechanizm ma być uniwersalny, dlatego czy można to obejść, by nie trzeba było podawać faktycznych nazw parametrów dodając parametr?
Oczywiście jednym z rozwiązań jest zamiana parametrów wejściowych w metodzie na tablicę objectów, a potem taka sama tablica z nazwami pól, ale chciałbym tego uniknąć.
Pozdrawiam.