LINQ一个简单的问题

Ton*_*ony 1 c# linq

我有那个班:

public class Post 
{
    public Oid Id { get; private set; }

    public IList<Comment> Comments { get; set; }
}

public class Comment
{
    public Guid Id { get;  set; }
    public DateTime TimePosted { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

如何在linq中选择那些评论有的帖子,例如TimePosted> = DateTime.Now ??

Don*_*nut 5

给定一个Post名为" posts" 的对象集合,你可以这样做:

var result = posts.Where(p => p.Comments.Any(c => c.TimePosted >= DateTime.Now));
Run Code Online (Sandbox Code Playgroud)

请注意,这是Method语法的示例.有关Query语法的示例,请参阅cybernate的答案.

MSDN对这里提供的两种样式进行了比较:LINQ查询语法与方法语法.