質問内容としましては、下記のクエリ式と等価のメソッド式を書く場合に、
join と同時に where 出来ないものでしょうか?
現状だと、join した結果に対して where をしているので、
最後に、貸出コメントテーブルの情報にリサイズして返す方法しか思いつかないのですが、
メソッド式で良い where の方法がありますでしょうか?
書籍貸出テーブル(loan)
・loanId
・bookId
・userId
貸出コメントテーブル(loanComment)
・loanCommentId
・loanId(書籍貸出テーブルのloanId)
・comment
下記の書籍とユーザーに該当する貸出コメントテーブル情報を取得する
書籍:xxxxxx
ユーザー:yyyyyy
クエリ式
var result = from lc in loanComment join l in loan on lc.loanId equals l.loanId where l.bookId == xxxxxx && l.userId == yyyyyy select new { l };
メソッド式
var result = loanComment.Join( loan, lc => lc.loanId, l => l.loanId, (lc, l) => new { lc.loanCommentId, lc.loanId, l.bookId, l.userId, lc.comment }) .Where(w => w.bookId == xxxxxx && w.userId == yyyyyy) .Select(s => new { s.loanCommentId, s.loanId, s.comment });

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2015/11/10 06:58