2012-01-03 10 views
1

私は2つのオブジェクト:PollPollIp(一対多)を持っています。 具体的なIPアドレスを持たないすべてのポーリングを選択します。これどうやってするの? マイコード:Linqからのコレクション内のコレクション

public Poll GetNextPoll(string ipAddress) 
{ 
    return Database.Polls 
    .Where(p => p.IsPublish.Value && p.PollIps.Any(i => i.IpAdress != ipAddress)) 
    .FirstOrDefault(); 
} 

おかげ

EDIT
DBで私は、次のしている:

投票:

id Name  ... 

1  Poll1 
2  Poll2 

PollIp

PollId  IpAdress 
1   ::1 (it's my IP) 

そして、クエリが2

+5

まあとPollIpなしPollIdに、あなたはいくつかのコードを与えてくれたので...どのようにあなたがやりたいしないこと、2等しいidを持つPollを返さなければなりませんか? –

+1

あなたのコードに何が問題なのですか? – jeroenh

+0

更新された質問 – user348173

答えて

2
public IEnumerable<Poll> GetPolls(string ipAddress) 
{ 
    return Database.Polls.Where(p => p.PollIps.All(i => i.IpAdress != ipAddress)) 
} 
+0

ありがとうございます、それは仕事です。 – user348173

関連する問題