Как спроектировать один метон в DAL для получения различных результатов из базы данных? - PullRequest
0 голосов
/ 28 июня 2010

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

//I am using this class as retrieval datatype for now i have only 3 returning data types
public class retDataTypes {

public bool ansBool;
public int ansInt;
public string ansString;

}

public class doQuery {

public retDataTypes returnAnswer(ref sqlcommand cmd , string typeHelper) {

//opening the sqlconnection
//pass the cmd then

retDataTypes  answer = new retDataTypes();

//in most of the cases we need only one row result so that I'm using executeScalar()
switch (typeHelper) {

case "string" :

answer.ansString = cmd.executescalar();
break;

case "int" :
answer.ansInt = cmd.executescalar();
break;

case "bool" :
answer.ansBool = cmd.executescalar();
break;

}

return answer;
}

Мне нужно ваше мнение об этом подходе, насколько он хорош (я знаю, что он неэффективен) и есть ли способы получше, чем этот?

Пожалуйста, дайте мне знать.

С уважением.

1 Ответ

0 голосов
/ 28 июня 2010

Передайте SqlCommand без 'ref'.

Измените тип возвращаемого значения 'retDataTypes' на 'object' и приведите к типу, который вы ожидаете в вызывающей функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...