Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 林:一个简单的问题_C#_Linq - Fatal编程技术网

C# 林:一个简单的问题

C# 林:一个简单的问题,c#,linq,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; } } 公共类职位 { 公共Oid Id{g

我有一门课:

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; }
}
公共类职位
{
公共Oid Id{get;private set;}
公共IList注释{get;set;}
}
公开课评论
{
公共Guid Id{get;set;}
public DateTime TimePosted{get;set;}
}

如何在linq中选择注释为例如TimePosted>=DateTime的帖子。现在???

给定一组名为“
posts
”的
Post
对象,您可以这样做:

var result = posts.Where(p => p.Comments.Any(c => c.TimePosted >= DateTime.Now));
请注意,这是方法语法的一个示例。有关查询语法的示例,请参见


MSDN对此处提供的两种样式进行了比较:。

如果有一组名为“
Post
”的
Post
对象,您可以这样做:

var result = posts.Where(p => p.Comments.Any(c => c.TimePosted >= DateTime.Now));
请注意,这是方法语法的一个示例。有关查询语法的示例,请参见

MSDN对这里提供的两种样式进行了比较:。

试试这个:

from p in context.Posts
from c in p.Comments
where c.TimePosted >= DateTime.Now
select p
试试这个:

from p in context.Posts
from c in p.Comments
where c.TimePosted >= DateTime.Now
select p