-2
У меня есть таблица с именем Pinfo, которую я хочу сделать, это получить записи из db с помощью запроса Linq и вернуть его. Но я не мог этого сделать. Это то, что у меня есть до сих пор. Как я могу сделать эту работуКак сделать DataTable как Enumerable
List<ProductInfo> getList()
{
List<ProductInfo> pi = new List<ProductInfo>();
using (SqlConnection con = new SqlConnection("server=.\\sqlexpress;database=Project;User Id=sa;Password=1"))
{
con.Open();
using (SqlCommand cmd = new SqlCommand("select * from PInfo", con))
{
SqlDataAdapter adp = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
var query = from c in dt.AsEnumerable()
select new
{
id = c.Field<int>("Id"),
name = c.Field<string>("Name"),
price = c.Field<decimal>("Price")
};
adp.Fill(query);
}
}
return pi;
}
Я думаю, что вы забыли запустить фактический запрос перед повторением результатов – Greenonion
Стол пуст. Вы не можете использовать ADO.NET, как если бы это был Linq-To-SQL. Сначала вы должны использовать 'adp.Fill (dt)'. Затем вы можете использовать 'Linq-To-DataTable' (' Linq-To-Objects') для запроса таблицы. –