поскольку в вопросе говорится, что я пытаюсь заполнить таблицу в представлении из таблицы данных. Пока это мой код в контроллере:
DataSet dsTemplates = new DataSet();
string qryTemplets = "";
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
conn.Open();
SqlDataAdapter daTemplate = new SqlDataAdapter(qryTemplets, conn);
daTemplate.Fill(dsTemplates, "FileInfo");
DataTable dtTemplates = new DataTable();
dtTemplates = dsTemplates.Tables[0];
List<Models.GameModels.UserList> tables = dtTemplates.Rows.AsEnumerable()
.Select(t => new Models.GameModels.UserList
{
Name = row["Name"],
Record = row["Record"]
})
.ToList();
conn.Close();
return View(tables);
Это дает мне следующее исключение:
"System.Data.DataRowCollection" не содержит определения для "AsEnumerable" и наилучшего метода перегрузки методом "System.Data.DataTableExtensions.AsEnumerable(System.Data.DataTable)" имеет некоторые недопустимые аргументы
Это лучший способ получить таблицу с несколькими строками? Есть ли способ обхода ошибки? Заранее спасибо. Что еще я могу сделать?
Это правильный способ проецирования строк в объект UserList
:
List<UserList> tables = dtTemplates.AsEnumerable()
.Select(t => new UserList
{
Name = t["Name"],
Record = t["Record"]
}).ToList();