条件查询

       Util6 MIS 框架系统采用的Asp.Net MVC5模式开发,所用的模板引擎为Razor引擎,而Razor标记中就是原生的C#代码,

所以在前端UI中编写模板就没有必要使用第三方或自创的标记语言,配合Util.Mapping可以非常轻松制作一个漂亮

且功能强大的前端模板了。



//根据员工ID获取员工实体对象(注意Query方法中只能用普通变量,不能用对象属性或复杂语句)


//单条件查询----------------------
var empID = int.Parse(Request.Form["empID"]);
var empList1 = new OasEmployee().Query().ToList();  
//查找性别为男的员工前10条记录
var empList2= new OasEmployee().Query(m => m.Sex == 1).ToList(10);
//查找性别为男的员工真名包含“中”字的列表
var empList3= new OasEmployee().Query(m => m.Sex == 1 && m.RealName.Contains("中")).ToList();  
//查找性别为男的员工真名左包含“李”字的列表
var empList4= new OasEmployee().Query(m => m.Sex == 1 && m.RealName.StartsWith("李")).ToList(); 
//查找性别为男的员工按ID升序的列表
var empList5= new OasEmployee().Query(m => m.Sex == 1).SortAsc(m => m.ID).ToList();
//查找性别为男的员工先按ID升序再按状态降序的列表
var empList6= new OasEmployee().Query(m => m.Sex == 1).SortAsc(m => m.ID).SortDesc(m => m.Status).ToList();
//查找性别为男的员工按ID升序的列表总数
var empCount= new OasEmployee().Query(m => m.Sex == 1).ToCount();
//查找编号为empID的员工的真名
var empName = new OasEmployee().Query(m => m.ID == empID).ToValue(m=>m.RealName);
//查找用户编号最大值的员工的用户编号
var empName = new OasEmployee().Query().ToMax(m=>m.UserID);
//更多特殊查询可以自定义查询条件





//多条件查询----------------------
var condition = new SqlCondition();
if (model.ID > 0)
{
    condition.Append(TabHelper.OasEmployee_ID, model.ID);
}
if (!string.IsNullOrWhiteSpace(model.RealName))
{
    condition.Append(SqlCompareType.StartsWith, TabHelper.OasEmployee_RealName, realName);
}
if (!string.IsNullOrWhiteSpace(model.LookAction))
{
    var idList = new OasFlowProcess().Query(m => m.EmployeeID == empID && m.Status == 0)
        .ToValueList(k => k.ItemID).Select(m=> int.Parse(m)).Distinct().ToList();
    condition.Append(SqlCompareType.In,TabHelper.OasEmployee_ID, idList);
}
if (!string.IsNullOrWhiteSpace(model.Status))
{
    condition.Append(TabHelper.OasEmployee_Status, int.Parse(model.Status));
}
if (!string.IsNullOrWhiteSpace(model.DatBegin))
{
    condition.Append(SqlCompareType.GreaterThan,TabHelper.OasEmployee_DatCreate,DateTime.Parse(model.DatBegin + " 00:00:01"));
}
if (!string.IsNullOrWhiteSpace(model.DatEnd))
{
    condition.Append(SqlCompareType.LessThan,TabHelper.OasEmployee_DatCreate,DateTime.Parse(model.DatEnd + " 23:59:59"));
}
var mapper = new OasEmployee().Query(condition);

var pageSize = 50;
var currPage = string.IsNullOrWhiteSpace(Request.Form["CurrPage"])?1:int.Parse(Request.Form["CurrPage"]);
var recordCount = mapper.ToCount();
var itemList = mapper.SortDesc(m => m.DatCreate).ToList(pageSize, currPage, recordCount);




新手入门

建站流程
安装环境

使用教程

条件查询
分页调用
单面调用

系统说明

模板引擎
二次开发