LINQ to SQL(.dbml):ExecuteQuery方法如何返回DataTable?

时间:2012-11-17 14:16:22

标签: c# linq linq-to-sql datatable executequery

var products = db.ExecuteQuery<Product>(
  "SELECT ProductID, ProductName " +
  "FROM Products " +
  "WHERE Discontinued = 0 " +
  "ORDER BY ProductName;"
);

上面的查询工作正常但有任何方式db.ExecuteQuery<Product>返回DataTable Product

而不是var products

1 个答案:

答案 0 :(得分:4)

你不应该这样做。为什么然后用LINQ-To-SQL打扰自己,只使用普通的ADO方法来获取普通的数据表对象。这不是LINQ-to-SQL的用途。你应该考虑对象。

但是,如果您需要以任何方式执行此操作:ExecuteQuery返回:IEnumerable<T>的集合。然后,您可以将此列表转换为数据表。您可以使用以下函数将其转换为数据表: