以下查询用于获取类别和每个类别的一个新闻.如何使用LINQ编写此查询
SELECT * FROM News n where n.NewsID IN
(SELECT TOP 1 NewsID FROM News v
WHERE v.CategoryID = n.CategoryID
ORDER BY CreatedOn DESC)
Run Code Online (Sandbox Code Playgroud)
提前致谢.
没有测试,但尝试这样的事情:
using (var db = new YourDataContext())
{
var results = from n in db.News
let v = db.News
where n.NewsId == v.Where(c=>c.CategoryId == n.CategoryId)
.OrderByDescending(o=>o.CreatedOn).First()
select n;
}
Run Code Online (Sandbox Code Playgroud)