0

WHEREコードを繰り返さないように、より一般的な句を作成することを検討してきました。タグに基づいて投稿を返す次のものがあります。同じことを、検索用語またはカテゴリに基づいたリターン ポストにも同じように簡単に使用できます。唯一の違いは where 句です。したがって、私が見たものから、式ツリーまたは述語ビルダーを使用できますが、これらが同じかどうかはわかりません。また、2013年のSO投稿ではDLINQはオプションではありませんでした。そして、LinqKitもオプションだと思います。より一般的なwhere句を作成するための正しい方向を誰かが指摘できますか?

Where(Function(t) t.PostTag.Any(Function(t1) t1.Tag.StartsWith(tag)))これは、 PostTag の代わりに PostCategory または Posts で簡単に swpa できるように、動的にしたい部分です。

コード:

Return _postRepository.SelectAll.Where(Function(t) t.PostTag.Any(Function(t1) t1.Tag.StartsWith(tag))).Select(Function(S) New be_PostsViewModel With {.IsPublished = S.PostIsPublished, .Id = S.PostId, .PostSummary = S.PostSummary, .PostDateCreated = S.PostDateCreated, .PostTitle = S.PostTitle, .PostTags = S.PostTag}).OrderByDescending(Function(d) d.PostDateCreated).Where(Function(p) p.IsPublished = True).Skip((Page - 1) * PageSize).Take(PageSize).ToList

4

1 に答える 1