• 1400/08/11

نحوه کوئری زدن روی 2 جدول :

سلام استاد

من داخل  دیتابیسم دو جدول دارم : blog و blogvisit

داخل blog که اطلاعات مقالاتم ثبت میشه و داخل blogvisit هم کد مقاله به همراه آیپی کاربر

داخل یک از صفحاتم بخش رو گذاشتم که کاربر میتونه با استفاده از نام مقاله، دسته بندی و بازدید اونها مقالات رو فیلتر کنه

برای فیلتر کردن مقالات هم من به این صورت عمل کردم :

        IQueryable<Blog> query = _context.Blogs.Include(c => c.BlogCategory).Include(b => b.BlogVisits).Include(u => u.User).Include(c => c.BlogComments).AsQueryable();


            #region State

            switch (filter.State)
            {
                case FilterBlogState.All:
                    break;

                case FilterBlogState.Deleted:
                    query = query.IgnoreQueryFilters().Where(b => b.IsDelete == true);
                    break;

                case FilterBlogState.NotReleased:
                    query = query.Where(b => b.IsReleased == false);
                    break;

                case FilterBlogState.Released:
                    query = query.Where(b => b.IsReleased == true);
                    break;

                case FilterBlogState.LastPosts:
                    query = query.OrderBy(b => b.CreateDate);
                    break;

                case FilterBlogState.MostPopular:

                    break;



            }


            #endregion

برای اینکه بتونم مقالات رو براساس بازدیدشون فیلتر کنم باید کوئری بزنم روی جدول blogvisits

که اینجا نمیشه اینکارو کردم باید یک کوئری جدابزنم که در این صورت فیلتر های قبلی از بین میرن

ممنون میشم اگر راهنماییم کنین

  • 1400/08/11
  • ساعت 16:32

سلام 

سرچ کنید Dynamic Query Ef Core


  • 1400/08/17
  • ساعت 17:09

آقای مدائنی من برای این مورد سرچ زیاد زدم اما چیزی مرتبط با این پیدا نکردم.

ممنون میشم اگر خودتون بهم بگید چیکار بکنم یا اگر سمپلی دارید برام بفرستید .