数据迷糊查询就是通过数据中的某条数据进行查询,比如一条数据中有它的名称、编号、状态等等数据,那么你就可以通过它们中的任何一条数据进行查询这条数据出来,这就是模糊查询。模糊查询它的运用是在数据量比较大的情况下进行使用,如果数据只有那么十几二十条就真的没必要,不过在我们以后项目中都是根据客户的需求去设计项目的,那么也就是说客户需要这个功能,你就只能去满足它的需求了,哪怕数据量非常小的情况下。这个查询你可以限定它的搜索内容,可以只限定一个搜索目标,也可以多个,个人喜欢的。
那么下面就演示一下项目的代码跟效果图,首先是视图的代码
function shousouannv() {
var UAUnits = $("#Units").val();
if (UAUnits == undefined) {
UAUnits = "";
}
tabUnits = layuiTable.reload("tabUnits", {
url: "/Basicdata/JiChuziliao/selectUnitsAll",
page: {
curr: 1
},
where: {
UAUnits: UAUnits,
},
});
}
然后再到控制器代码演示,至于那些搜索框那些前端代码我就不展示了,那些不会搞的就学习一下前端就好了
publicActionResult selectUnitsAll(LayuiTablePage layuiTablePage, string UAUnits)
{
var listStu = (from tbUnits in myModels.PW_Units
selectnewunit
{
UnitsID =tbUnits.UnitsID,
Units =tbUnits.Units.ToString(),
DecimalAllowedNo= tbUnits.DecimalAllowedNo.ToString(),
state =tbUnits.state.ToString(),
note = tbUnits.note.ToString(),
}).ToList();
if (!string.IsNullOrEmpty(UAUnits))
{
listStu = listStu.Where(m =>m.Units.Contains(UAUnits)).ToList();
}
//获取总数
var intTotalRow = listStu.Count();//Count()计算总数
List<unit> list = listStu
.Skip(layuiTablePage.Getmanagement())//layuiTablePage 这个类两个老师的有所区别,方法Getmanagement不一样
.Take(layuiTablePage.limit)
.ToList();//数据类型的转换 ToList()转换对象为List,List和ToList()要同时存在
//调用分页封装类
LayuiTableData<unit> layuiTableData = newLayuiTableData<unit>();
layuiTableData.count = intTotalRow;//行总数
layuiTableData.data = list;//具体显示数据
return Json(layuiTableData, JsonRequestBehavior.AllowGet);
}
可能代码会有点混乱,那么现在演示一下它的运行效果图吧,这里我只做了一个搜索的目标,就是搜索它的单位名称就会查询出相应的数据信息,因为官网的也是只搜索单位的。
实现这个功能就是通过上面代码方法就可以实现了,不会做这个功能的可以参考一下,如果有错可以提出进行修改,如果你需要增加多几个搜索的目标,那么你就在控制器代码那里进行添加就可以实现了,代码如下
if (!string.IsNullOrEmpty(UAUnits))
{
listStu = listStu.Where(m =>m.Units.Contains(UAUnits)).ToList();
}
在这串代码中继续新增相应的代码就可以了,模糊查询功能就这样实现咯
那么下面就演示一下项目的代码跟效果图,首先是视图的代码
function shousouannv() {
var UAUnits = $("#Units").val();
if (UAUnits == undefined) {
UAUnits = "";
}
tabUnits = layuiTable.reload("tabUnits", {
url: "/Basicdata/JiChuziliao/selectUnitsAll",
page: {
curr: 1
},
where: {
UAUnits: UAUnits,
},
});
}
然后再到控制器代码演示,至于那些搜索框那些前端代码我就不展示了,那些不会搞的就学习一下前端就好了
publicActionResult selectUnitsAll(LayuiTablePage layuiTablePage, string UAUnits)
{
var listStu = (from tbUnits in myModels.PW_Units
selectnewunit
{
UnitsID =tbUnits.UnitsID,
Units =tbUnits.Units.ToString(),
DecimalAllowedNo= tbUnits.DecimalAllowedNo.ToString(),
state =tbUnits.state.ToString(),
note = tbUnits.note.ToString(),
}).ToList();
if (!string.IsNullOrEmpty(UAUnits))
{
listStu = listStu.Where(m =>m.Units.Contains(UAUnits)).ToList();
}
//获取总数
var intTotalRow = listStu.Count();//Count()计算总数
List<unit> list = listStu
.Skip(layuiTablePage.Getmanagement())//layuiTablePage 这个类两个老师的有所区别,方法Getmanagement不一样
.Take(layuiTablePage.limit)
.ToList();//数据类型的转换 ToList()转换对象为List,List和ToList()要同时存在
//调用分页封装类
LayuiTableData<unit> layuiTableData = newLayuiTableData<unit>();
layuiTableData.count = intTotalRow;//行总数
layuiTableData.data = list;//具体显示数据
return Json(layuiTableData, JsonRequestBehavior.AllowGet);
}
可能代码会有点混乱,那么现在演示一下它的运行效果图吧,这里我只做了一个搜索的目标,就是搜索它的单位名称就会查询出相应的数据信息,因为官网的也是只搜索单位的。
实现这个功能就是通过上面代码方法就可以实现了,不会做这个功能的可以参考一下,如果有错可以提出进行修改,如果你需要增加多几个搜索的目标,那么你就在控制器代码那里进行添加就可以实现了,代码如下
if (!string.IsNullOrEmpty(UAUnits))
{
listStu = listStu.Where(m =>m.Units.Contains(UAUnits)).ToList();
}
在这串代码中继续新增相应的代码就可以了,模糊查询功能就这样实现咯