C# MVC中组合条件查询

C# MVC中组合条件查询

首先我们来看下页面效果,下图中我们要查询服装,可以怎么查询呢?根据服装可以分为不同的品牌、上市季节、类别的名称,而组合查询就是可以查询一件春季上市阿尼玛服装,如下图所示:在这里插入图片描述

在这里插入图片描述

在上截图中我们看到,查询出符合条件的结果,可以更准确的找到自己需要的数据;下面来看控制器的代码,如下图:
   public ActionResult SelectShaiShuan(BsgridPage bsgridPage, string start, string end, string PinPaiID, string ShangPinTypeID, string JiJieID, string BianMa, string ShangPinMC, string KuanHao, string Color, string Size, int? JinNumber, int? JinShuLiang, int? XiaoNumber, int? XiaoShuLiang, int? ZShuNumber, int? ZShuLiang)
        {
            List<JinHuoVo> AA = new List<JinHuoVo>();//实例化数据集
            List<JinHuoVo> AB = new List<JinHuoVo>();
            List<JinHuoVo> AC = new List<JinHuoVo>();
            List<JinHuoVo> AD = new List<JinHuoVo>();
            List<JinHuoVo> AE = new List<JinHuoVo>();
            List<JinHuoVo> AF = new List<JinHuoVo>();
            List<JinHuoVo> AG = new List<JinHuoVo>();
            List<JinHuoVo> AH = new List<JinHuoVo>();
            var list = (from tbXiaoShouMX in myModels.Base_XiaoShoMX
                        join tbXiaoShou in myModels.Base_XiaoShouDan on tbXiaoShouMX.XiaoShoMXID equals tbXiaoShou.XiaoShouDanID
  if (!string.IsNullOrEmnt(); j++)
                    {
                        AB.Add(AA[j]);
                    }
                }
                AC = AB;
            }
            if (!string.IsNullOrEmpty(ShangPinTypeID))
            {
                if (!string.IsNullOrEmpty(PinPaiID))
                {
                    string[] aa = ShangPinTypeID.Split(',');
                    for (int i = 0; i < aa.Count(); i++)
                    {
                        int bb = Convert.ToInt32(aa[i]);
                        AD = AC.Where(m => m.ShangPinTypeID == bb).ToList();
                        for (int j = 0; j < AD.Count(); j++)
                        {
                            AE.Add(AD[j]);
                        }
                    }
                    AF = AE;
                }
在这里我是先新建一些新的数据集,只有条件参数看自己实际需要进行添加;由于我后台传过来的值我是一个数组,所以先进行切割,再进行查询数据,最后将if嵌套判断之后的数据集赋值给list,也就是先前新建的数据集,如list=AH;
     if (!string.IsNullOrEmpty(JiJieID))
            {
                if (!string.IsNullOrEmpty(ShangPinTypeID))
                {
                    string[] ab = JiJieID.Split(',');
                    for (int i = 0; i < ab.Count(); i++)
                    {
                        int ac = Convert.ToInt32(ab[i]);
                        AG = AF.Where(m => m.JiJieID == ac).ToList();
                        for (int j = 0; j < AG.Count(); j++)
                        {
                            AH.Add(AG[j]);
                        }
                    }
                    list = AH;
                }
这样一个简单的组合查询就可以实现了。

猜你喜欢

转载自blog.csdn.net/weixin_44549949/article/details/86517534