动态创建分页 LINQ+EF
public class Message
{
public int MessageId { get; set; }
public string MessageTitle { get; set; }
public string MessageContent { get; set; }
public DateTime? MessageDate { get; set; }
public string MessageType { get; set; }
public int? MessageAuthorId { get; set; }
public int MessageStart { get; set; }
public int? ParentID { get; set; }
public string remark { get; set; }
} //总条数+数据
public class MessageCount
{
public int count { get; set; }
public List<Message> MessageList { get; set; }
}
/// <summary>
/// 分页查询
/// </summary>
public MessageCount getMessaggePage(string MessageId, string MessageTitle, string MessageContent, string MessageType, string MessageAuthorId, string MessageStart, string ParentID, string remark, int min, int max)
{ ZQSDWEBEntities2 ZQSDWEBEntities2 = new ZQSDWEBEntities2();
MessageCount messageCount = new MessageCount(); messageCount.count = ZQSDWEBEntities2.MessageDetail.Count<MessageDetail>(); //IEnumerable<Message> messageList = (from h in ZQSDWEBEntities2.MessageDetail
// where h.ParentID == ParentID && h.MessageStart == MessageStart &&
// h.MessageAuthorId == MessageAuthorId && h.MessageContent == MessageContent&&
// h.MessageId == MessageId&&
// h.MessageTitle == MessageTitle && h.MessageType == MessageType&&
// h.remark == remark
// select new mode.Message()
// { // MessageId = h.MessageId,
// MessageAuthorId = h.MessageAuthorId,
// MessageContent = h.MessageContent,
// MessageDate = h.MessageDate,
// MessageStart = h.MessageStart,
// MessageTitle = h.MessageTitle,
// MessageType = h.MessageType,
// ParentID = h.ParentID,
// remark = h.remark
// }).OrderBy(h=>h.MessageId).Skip<Message>(min).Take<Message>(max); IQueryable<MessageDetail> odj = ZQSDWEBEntities2.MessageDetail; try
{ if (MessageId != null)
{
int tem = Convert.ToInt32(MessageId);
odj = odj.Where(M => M.MessageId == tem);
}
if (MessageTitle != null)
{
odj = odj.Where(M => M.MessageTitle.StartsWith(MessageTitle));
}
if (MessageContent != null)
{
odj = odj.Where(M => M.MessageContent.StartsWith(MessageContent));
}
if (MessageType != null)
{
odj = odj.Where(M => M.MessageType == MessageType);
}
if (MessageAuthorId != null)
{
int tem = Convert.ToInt32(MessageAuthorId);
odj = odj.Where(M => M.MessageAuthorId == tem);
}
if (MessageStart != null)
{
int tem = Convert.ToInt32(MessageStart);
odj = odj.Where(M => M.MessageStart == tem); }
if (ParentID != null)
{
int tem = Convert.ToInt32(ParentID);
odj = odj.Where(M => M.ParentID == tem); }
if (remark != null)
{
odj = odj.Where(M => M.remark == remark);
}
odj = odj.OrderBy(Math => Math.MessageId).Skip(min).Take(max);
}
catch (Exception ex)
{ throw ex;
} messageCount.MessageList = (from h in odj
select new Message()
{
MessageId = h.MessageId,
MessageAuthorId = h.MessageAuthorId,
MessageContent = h.MessageContent,
MessageDate = h.MessageDate,
MessageStart = h.MessageStart,
MessageTitle = h.MessageTitle,
MessageType = h.MessageType,
ParentID = h.ParentID,
remark = h.remark }).ToList();
return messageCount; // 拉姆达表达式
// adapter.GetData().Select(d=>new Customer(){ID=d.ID,...}) //List<MessageDetail> MessageDetails = ZQSDWEBEntities2.MessageDetail.Where<MessageDetail>(M => M.ParentID == PrentId && M.MessageStart == 1).ToList<MessageDetail>();
// return JsonConvert.SerializeObject(MessageDetails, Formatting.None); }
动态创建分页 LINQ+EF的更多相关文章
- [EF] - 动态创建模型:System.Reflection.Emit + Code First
动态创建Entity Framework模型并且创建数据库 使用System.Reflection.Emit+Code First model创建以下的一个实体类和DbContext并且创建数据库: ...
- ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...
- JS,Jquery,ExtJs不同脚本动态创建DOM对象
好久不来写东西了,这段时间太慢了,闲了下来看了几篇文章,觉得很好,同时也许咱们大家都能遇到,所以就把它记录下来... 简单使用JavaScript.JQuery.ExtJs进行DOM对象创建的测试,主 ...
- JavaScript DOM动态创建(声明)Object元素
http://www.cnblogs.com/GuominQiu/archive/2011/04/01/2002783.html 一文提及“等整个页面加载完毕后,根据用户所选的阅读机类型,再用Java ...
- 基于jquery的表格动态创建,自动绑定,自动获取值
最近刚加入GUT项目,学习了很多其他同事写的代码,感觉受益匪浅. 在GUT项目中,经常会碰到这样一个问题:动态生成表格,包括从数据库中读取数据,并绑定在表格中,以及从在页面上通过jQuery新增删除表 ...
- C# 动态创建出来的窗体间的通讯 delegate2
附件:http://files.cnblogs.com/xe2011/CSharp_WindowsForms_delegate02.rar 窗体2 和窗体3 都是动态创建出来的 现在 FORM3.TE ...
- FineUIMvc随笔 - 动态创建表格列
声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. 用户需求 用户希望实现动态创建表格列,在 WebForms 中,我们通过在 Page_Init 中创建列来实现: 但是在 MVC ...
- FineUIMvc随笔(1)动态创建表格列
声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. <FineUIMvc随笔>目录 FineUIMvc随笔(1)动态创建表格列 FineUIMvc随笔(2)怎样在控件中 ...
- oaf 动态创建table vo (转)
原文地址:如何动态创建table 需求: 因为系统中有几千个QA plan 但是不能手动创建几千个 质量收集页面所有需要根据 不同的plan 动态创建对应的 质量收集页面. 但是创建tabel 都要绑 ...
随机推荐
- java口算器
package dd;import javax.swing.*; import java.awt.*;import java.awt.event.*;class Main extends JFrame ...
- slf4j 和 log4j使用案例
以Maven项目为例: 步骤: 1.在Maven的pom.xml文件中添加dependency: 之后就会添加3个jar包: 2.在项目下添加log4j.properties 3.log4j.pro ...
- mysql拒绝访问(Error 1044/1045)问题的解决
遇到此问题 一般是权限问题 修改权限即可 然后用grant命令下放权限. GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY 'ro ...
- C++类继承中的构造函数和析构函数 调用顺序
思想: 在C++的类继承中,构造函数不能被继承(C11中可以被继承,但仅仅是写起来方便,不是真正的继承) 建立对象时,首先调用基类的构造函数,然后在调用下一个派生类的构造函数,依次类推: 析构对象时, ...
- 编译安装mysql5.7.9
第一步:安装一些可能会用到的依赖 yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib lib ...
- (八)boost库之异常处理
(八)boost库之异常处理 当你面对上千万行的项目时,当看到系统输出了异常信息时,你是否想过,如果它能将文件名.行号等信息输出,该多好啊,曾经为此绞尽脑汁. 今天使用boost库,将轻松的解决这个问 ...
- hdu1814 Peaceful Commission,2-sat
题目大意:一国有n个党派.每一个党派在议会中都有2个代表,现要组建和平委员会,要从每一个党派在议会的代表中选出1人,一共n人组成和平委员会.已知有一些代表之间存在仇恨,也就是说他们不能同一时候被选为和 ...
- 开源 java CMS - FreeCMS2.3 移动app生成首页数据
原文地址:http://javaz.cn/site/javaz/site_study/info/2015/28160.html 项目地址:http://www.freeteam.cn/ 生成首页数据 ...
- 【最大流】【HDU3338】【Kakuro Extension】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3338 题目大意:填数字,使白色区域的值得和等于有值得黑色区域的相对应的值,用网络流来做 题目思路:增加 ...
- CSS 浏览器默认样式
不要再说div天生就是block——这句话应该换成:浏览器默认样式天生规定了div是block——所以才导致了div是block!是默认样式规定的,不是浏览器的内核规定的. 没有设置block的元素, ...