30

我在 MVC 网站中使用实体框架

我正在尝试使用原始查询获取记录数。

我正在寻找这些方面的东西,但任何人都会对任何解决方案感到满意。

var sql = SELECT COUNT(*) FROM dbo.Articles WHERE (CategoryID = 3)

var total = _context.Database.SOMETHING(sql)

我意识到对于这样一个简单的场景,原始查询可能不是要走的路,但实际上,sql 字符串要复杂得多,因此使用 Linq to SQL 几乎是不可能的。

4

1 回答 1

64

您可以使用SqlQuery方法首先使用 EF 代码执行原始 SQL查询:

var sql = "SELECT COUNT(*) FROM dbo.Articles WHERE (CategoryID = 3)";
var total = _context.Database.SqlQuery<int>(sql).First();
于 2012-04-14T15:05:06.417 回答