1

最初に遅延読み込みとデータベースでEF6を使用しています。

エンティティの投稿にこのナビゲーション プロパティがあります。

  • 投稿.コメント
  • Posts.CommentsReference
  • 投稿.カテゴリー

そして、この2つのコード:

コード 1

var query = Context.Post.Include(p => p.Categories)
   .ToList()

これは問題なく動作し、カテゴリに移動できます

コード 2

var query = Context.Posts.Include(p => p.Comments)
   .Join(Context.Users,
   t => t.WritterID,
   h => h.UserID,
   (t, h) => new { Posts= t, Users= h })
   .Where(q => q.Users.Name == "foo user")
   .Select(x => x.Posts)
   .ToList()

コメントに移動しようとすると、これによりObjectDisposedExceptionがスローされます。

なんで?ジョインだから?

編集済み:@ user2674389のコード提案付き

4

1 に答える 1

0

最後に、LINQ to Entities に切り替えたところ、問題なく動作しました。

var query = from c in Context.Posts.Include(p => p.Comments)
        join h in Context.Users on c.WritterID equals h.UserID
        where h.Users.CompareTo("foo user") == 0
        select c;

しかし、ラムダ式でそれを行う方法についてはまだ疑問に思っています...

于 2013-10-31T00:11:40.973 に答える