2013-02-14 87 views
0

我有对话表和属于对话的mebers列表,现在我按成员列表搜索对话。Linq只返回包含列表匹配的元素

会话班

class Conversation{ 

    public IList<Member> Members {get; set} 

    public DateTime CreatedOn {get; set;} 
} 

会员类

class Member{ 

    public Conversation {get; set;} 

    public User {get; set;} 
} 

而且我有方法(使用NHibernate的)

public Conversation GetByMembers(IList<Member> members){ 
    return repositort.Query().FirstOrDefault(x => x.Members.Intersect(members).Count() == members.Count); 

} 

有谁知道如何使用LINQ办呢?

更新:我想要完成的是查看是否已经与确切的会话成员进行了会话并重新打开它,而不是为提供的成员创建新对话。

+1

你可以分享你的代码,也你试过?我会认为这是可能的,但你没有给出足够的细节来帮助你。 – ryadavilli 2013-02-14 14:41:32

+5

请将代码添加到问题中... – daryal 2013-02-14 14:41:29

+2

_“...与mebers列表对话表”_您认为这有助于理解您的问题吗?请多做一点努力。 – 2013-02-14 14:43:28

回答

-1

你的意思是这样的:

query.Where(c=>list.Contains(c.Attribute)); 
+0

-1:回答一个反问题到底是什么意思,这实际上只是一行代码,因为我们没有关于数据模型的信息,所以不可能代表解决方案? – Jon 2013-02-14 14:49:32

+0

这应该是可能的评论? – h22 2013-02-14 15:20:13

相关问题