39-10000 C#逻辑代码 涉及知识点linq查询

 

 

 

    逻辑层查询代码,已经非常现实的逻辑代码了。 具备高度实用性。 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

// 1 引入命名空间
using Entity;
using Microsoft.EntityFrameworkCore;
//using Business;


namespace Business


{
    /// <summary>
    /// 浪潮表 测试
    /// </summary>
    /// 

    //  当前类 继承  entity  Inspur类文件
   public class InspurOperate:BaseOperate<Inspur>
    {
        #region  linq查询知识点 使用

        #region  手写报错代码 
        // 获取分页方法  有参数的方法
        //public List<Inspur> GetPage(PageInfo info,string  key)
        //{

        //    var query = GetQueryable();

        //    if (string.IsNullOrEmpty(key) == false)
        //        query = query.Where(q => query.ProjectName.Contains(key));

        //    info.RecordCount = query.Count();

        //    query = query
        //        .OrderByDescending(q => q.Investornamecode)
        //        .ThenByDescending(q => q.Enterprisename);

        //    return query.Skip(info.SkipCount)
        //        .Take(info.PageSize)
        //        .ToList();

        //}   手写的报错,复制的就可以了。。
        #endregion  

        public List<Inspur> GetPage(PageInfo info, string key)
        {
            var query = GetQueryable();

            if (string.IsNullOrEmpty(key) == false) // 如果null或者empty不为空 的条件成立,就执行下面的代码。这行代码意思。
                query = query.Where(q => q.Enterprisename.Contains(key));
            //数量
            info.RecordCount = query.Count();
            //排序
            query = query
                .OrderByDescending(q => q.Investornamecode)
                .ThenByDescending(q => q.Enterprisename);
            return query.Skip(info.SkipCount)
                .Take(info.PageSize)
                .ToList();
        }





        #endregion










    }
}

 

posted @ 2021-11-22 15:05  优敏行  阅读(40)  评论(0)    收藏  举报