/// <summary> /// 返回首列结果 /// </summary> /// <typeparam name="TModel"></typeparam> /// <param name="query"></param> /// <returns></returns> public dynamic QueryScalar <TModel>(LambdaQuery <TModel> query) where TModel : IModel, new() { query.Top(1); var reader = GetQueryDynamicReader(query); var a = reader.Read(); if (!a) { return(null); } var result = reader[0]; reader.Close(); return(result); }
/// <summary> /// 查询返回单个结果 /// 如果只查询ID,调用QueryItem(id) /// </summary> /// <typeparam name="TItem"></typeparam> /// <param name="expression"></param> /// <param name="idDest">是否按主键倒序</param> /// <param name="compileSp">是否编译成存储过程</param> /// <returns></returns> public TItem QueryItem <TItem>(Expression <Func <TItem, bool> > expression, bool idDest = true, bool compileSp = false) where TItem : IModel, new() { LambdaQuery <TItem> query = new LambdaQuery <TItem>(this); query.Top(1); query.Where(expression); query.OrderByPrimaryKey(idDest); List <TItem> list = QueryList <TItem>(query, 0, compileSp); if (list.Count == 0) { return(null); } return(list[0]); }