Добавление параметров в команду против адаптера - PullRequest
0 голосов
/ 21 мая 2018

Мне любопытно, есть ли разница, если есть, между добавлением параметров в OracleCommand и последующим добавлением их в OracleDataAdapter или путем непосредственного добавления их в OracleDataAdapter?

ДляНапример,

Добавление их в OracleCommand и последующее связывание их с OracleDataAdpater

string f= "foo";
string sql = "SELECT @c FROM Dual";

using(OracleCommand command = new OracleCommand(sql, this.Connection))
{
    OracleParameter param = new OracleParameter("@c", f);
    command.Parameters.Add(param);
    OracleDataAdapter adapter = new OracleDataAdapter(command);
    adapter.SelectCommand = command;
    DataSet dataset = new DataSet();
    adapter.Fill(dataset);
    return dataset;
}

Добавление их непосредственно в OracleDataAdapter

string f= "foo";
string sql = "SELECT @c CalcVarValue FROM Dual";
using(OracleCommand command = new OracleCommand(sql, this.Connection))
{
    OracleDataAdapter adapter = new OracleDataAdapter(command);
    adapter.SelectCommand.Parameters.Add(new OracleParameter("@c", f));
    DataSet dataset = new DataSet();
    adapter.Fill(dataset);
    return dataset;
}

Один способ предпочтительнее другого?Является ли добавление к OracleDataAdapter напрямую быстрее выполнения по сравнению с другим методом?

1 Ответ

0 голосов
/ 22 мая 2018

Разницы нет вообще.В обоих случаях параметр добавляется к OracleCommand.

Выбор между этими двумя стилями кодирования - это вопрос личных предпочтений, соглашений о кодировании, которые вы обязаны (если есть), и, в основном, мнения.

Лично я склонен использовать самый короткий код, который вы все еще можете прочитать через год со дня, когда вы его написали, и понять, что он делает, не думая об этом, или как кто-то однажды написал (я думаю,это было на Meta.SE) - В этой отрасли вы должны писать свой код как можно проще, потому что человек, который возглавит проект после вас, скорее всего, будет идиотом.

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