каждый я студент и новичок в разработке .NET и особенно в разработке MVC3, но для одного из моих проектов я буду работать над ним и проходить этап обучения
Проблема и путаница, с которыми я сталкиваюсь, связана с подключением к БД, хотя я полагаю, что при извлечении записей из базы данных это примерно так:
//Method One:
var conn = new SqlConnection(conString.ConnectionString);
const string cmdString = "Select * FROM table";
var cmd = new SqlCommand(cmdString, conn);
var mySqlDataAdapter = new SqlDataAdapter(cmd);
mySqlDataAdapter = new SqlDataAdapter(cmd);
mySqlDataAdapter.Fill(myDataSet, "design");
// making a new SqlCommand object with stringQuery and SqlConnection object THEN a new SqlDataAdapter object with SqlCommand object and THEN filling up the table with the resulting dataset.
Но пока я проверял MSDN Library , я обнаружил, что SqlDataAdapter предлагает конструкторы SqlDataAdapter (String, String), которые непосредственно принимают SelectCommand и строку подключения для инициализации, таким образом пропуская роль SqlCommand между , вот так:
//Method Two:
var conn = new SqlConnection(conString.ConnectionString);
const string cmdString = "Select * FROM table";
var mySqlDataAdapter = new SqlDataAdapter(cmdString, conn);
mySqlDataAdapter.Fill(myDataSet, "design");
Выглядит коротко и красиво для меня, но я смущен здесь тем, что, если это возможно таким образом, то почему большинство книг / учителей проходит раньше (SqlCommand's way).
- Какая разница между SqlCommand и SqlDataAdapter?
- Какой метод лучше Один или Два?
- Боюсь ли я использовать ярлык во втором методе, который может повлиять на безопасность или производительность?
Заранее извиняюсь, если я звучу как новичок или размыт Буду признателен за любую помощь, которая может прояснить мои концепции! Спасибо! :)