私はメッセージエンティティを含むMessageThreadエンティティを持っています。私はMessageThreadからすべてのメッセージに簡単にナビゲートできるように、外部キーが設定されています。各メッセージには、開始アドレスと終了アドレスがあります。特定のアドレスがメッセージを書き込んだり受信したりしたすべてのメッセージスレッドを取得するためのクエリを作成したいと思います。RIA Services、where句属性を使用する節
MessageThread
{
EntityCollection<Message> messages;
}
Message
{
long FromAccount;
long ToAccount;
}
クエリは、このようなものでなければなりませんが、私はMessageThread
クラスからのすべての方法にまで及びアドレスからナビゲートする方法を見つけ出すことはできません。
public IQueryable<MessageThread> GetMessageThreads(long userAccount)
{
return from messageThread in this.ObjectContext.MessageThreads
where messageThread.Messages.ToAddress == userAccount ||
messageThread.Messages.FromAddress == userAccount
select messageThread;
}
messageThread.Messagesが収集され、両方ToAddress
とFromAddress
コレクションから直接アクセスすることはできませんので、そのクエリは動作しません。