internal static Votes.Model.Page.PageInfo<T> GetPageData(int pageIndex, int pageSize, Func<T, bool> sqlWhere, Func<T, object> orderBy) {
using (DataContext db = new DataContext(Votes.Common.Utility.Util.ConnectionString())) {
//System.IO.StreamWriter sw = new System.IO.StreamWriter(System.Web.HttpContext.Current.Server.MapPath("~/log.txt"), true);
//db.Log = sw;
var query = from data in db.GetTable<T>() select data; //if (sqlWhere != null) {
// query.Where(sqlWhere);
//}
//if (orderBy != null) {
// query.OrderByDescending(orderBy);
//}
var list = query.Where(sqlWhere == null ? new Func<T, bool>(l => 1 == 1) : sqlWhere).OrderByDescending(orderBy == null ? new Func<T, object>(l => l) : orderBy); Votes.Model.Page.PageInfo<T> page = new Votes.Model.Page.PageInfo<T>();
page.TotalRecord = list.Count();//这里算总记录数时候 跟踪数据库发现sql语句没有带where条件
page.PageIndex = pageIndex;
page.PageSize = pageSize;
page.PageCount = (int)Math.Ceiling((page.TotalRecord + 0.0) / pageSize);
page.DataSource = list.Skip(pageSize * (pageIndex - 1)).Take(pageSize).ToList();//这里也是
//sw.Dispose();
//sw.Close();
//总共执行2条sql语句 都木有带条件 到底应该怎么写呢?
return page;
}
}
using (DataContext db = new DataContext(Votes.Common.Utility.Util.ConnectionString())) {
//System.IO.StreamWriter sw = new System.IO.StreamWriter(System.Web.HttpContext.Current.Server.MapPath("~/log.txt"), true);
//db.Log = sw;
var query = from data in db.GetTable<T>() select data; //if (sqlWhere != null) {
// query.Where(sqlWhere);
//}
//if (orderBy != null) {
// query.OrderByDescending(orderBy);
//}
var list = query.Where(sqlWhere == null ? new Func<T, bool>(l => 1 == 1) : sqlWhere).OrderByDescending(orderBy == null ? new Func<T, object>(l => l) : orderBy); Votes.Model.Page.PageInfo<T> page = new Votes.Model.Page.PageInfo<T>();
page.TotalRecord = list.Count();//这里算总记录数时候 跟踪数据库发现sql语句没有带where条件
page.PageIndex = pageIndex;
page.PageSize = pageSize;
page.PageCount = (int)Math.Ceiling((page.TotalRecord + 0.0) / pageSize);
page.DataSource = list.Skip(pageSize * (pageIndex - 1)).Take(pageSize).ToList();//这里也是
//sw.Dispose();
//sw.Close();
//总共执行2条sql语句 都木有带条件 到底应该怎么写呢?
return page;
}
}
解决方案 »
- visual studio 2005 遇到了问题,需要关闭,这怎么解决?
- asp.net中如何实现模块开发
- 急急急!!!!!div写成的文本框源码 可编辑的那种
- ASP.NET TREEVIEW 节点REMOVE后未能及时刷新怎办?
- asp.net配置与布局问题
- gridview 里面怎么获取linkbutton的值,并且删除
- 我把调试好的.net网站上传至买的空间上 为什么显示出错!
- 光標定位的問題:document.getElementById(...) 是null或不是一個物件
- 做一个排行榜时进行图片绑定的问题
- 关于DATAGRID的问题?如何设置编辑宽度?
- MVC 后台获取参数
- 图片上传问题
继续关注
艹你大爷的
where sqlWhere
select data;具体写法可能还要调整,只是大概意思
get {
if (string.IsNullOrEmpty(this.GetSearchKey)) return null;
if (Votes.Common.Utility.Util.Decrypt(this.GetSearchKey).Equals("Subject")) {
return l => l.Subject == this.GetSearchValue;
}
return null;
}
}
//这是sqlWhere的构建 麻烦看看怎么改
query.Where(l=>l.xx == "oo" )里面的表达式?