联合查询到gridview
using com.DAL.Base;
using DAL.ruanmou;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; namespace ASP20170211
{
public partial class UnionSearch : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
BindData();
}
public int PageSize = ;
private int _page;
public int PageIndex
{
get
{
try
{
_page = Request.QueryString["page"] == null ? : Convert.ToInt32(Request.QueryString["page"].ToString());
}
catch (Exception ex)
{
_page = ;
}
return _page;
}
set { _page = value; }
}
List<dbParam> listPm = new List<dbParam>();
public string GetSql()
{
StringBuilder sb = new StringBuilder();
sb.Append("1=1");
if (!string.IsNullOrEmpty(txtSUserName.Text.Trim()))
{
sb.Append(" and UserName=@UserName");
listPm.Add(new dbParam() { ParamName = "@UserName", ParamValue = txtSUserName.Text.Trim() });
}
if (ddlPhase.SelectedIndex > )
{
sb.Append(" and Phase=@Phase");
listPm.Add(new dbParam() { ParamName = "@Phase", ParamValue = ddlPhase.SelectedValue });
}
return sb.ToString();
}
public void BindData()
{
DataTable dt = StuAskDal.GetUserInnerAskDt(PageSize, PageIndex, GetSql(), listPm);
GridView1.DataSource = dt;
GridView1.DataBind();
}
/// <summary>
/// 总页数
/// </summary>
/// <returns></returns>
public int PageCount()
{
int iCount = StuAskDal.GetUserInnerAskCount(listPm, GetSql());
if (iCount % PageSize == )
{
return iCount / PageSize;
}
else
{
double d = Convert.ToDouble(iCount) / Convert.ToDouble(PageSize);
return Convert.ToInt32(Math.Ceiling(d));
}
}
/// <summary>
/// 分页
/// </summary>
/// <returns></returns>
public string GetPager()
{
StringBuilder sb = new StringBuilder();
sb.Append(@"<div><a href=""/UnionSearch.aspx?page=1"">第一页</a></div>");
if (PageIndex == )
{
sb.Append(@"<div><a href=""javascript:;"">上一页</a></div>");
}
else
{
sb.Append(string.Format(@"<div><a href=""/UnionSearch.aspx?page={0}"">上一页</a></div>", PageIndex - ));
}
if (PageIndex == PageCount())
{
sb.Append(@"<div><a href=""javascript:;"">下一页</a></div>");
}
else
{
sb.Append(string.Format(@"<div><a href=""/UnionSearch.aspx?page={0}"">下一页</a></div>", PageIndex + ));
}
sb.Append(string.Format(@"<div><a href=""/UnionSearch.aspx?page={0}"">尾页</a></div>", PageCount()));
sb.Append(string.Format("<div>{0}/{1}</div>", PageIndex, PageCount()));
return sb.ToString();
}
protected void btnSel_Click(object sender, EventArgs e)
{
//自动执行Page_Load
}
}
}
UnionSearch
using com.DAL.Base;
using Model.ruanmou;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace DAL.ruanmou
{
//联合查询
public class StuAskDal : System.Web.UI.Page
{
public static BaseDAL<StuAsk> m_RNewsDal = new BaseDAL<StuAsk>(); /// <summary>
/// 获取到当前条件下的记录数
/// </summary>
/// <param name="para"></param>
/// <param name="sWhere"></param>
/// <returns></returns>
public static int GetUserInnerAskCount(List<dbParam> para, string sWhere)
{
string sSql = string.Format(@"select UI.UserId from UserInfor
26 UI inner join StuAsk SA on UI.UserId=SA.UserId where 1=1 and {0}", sWhere);
DataTable dt = SqlHelper.ExecuteDataTable(com.Model.Base.DataBaseEnum.sq_ruanmou, sSql, CommandType.Text, para);
return dt.Rows.Count;
} /// <summary>
/// 获取到当前条件下的datatable
/// </summary>
/// <param name="pagesize">每页显示多少条数据</param>
/// <param name="pageindex">页码</param>
/// <param name="sWhere">条件语句</param>
/// <param name="listPm">cmd参数</param>
/// <returns></returns>
public static DataTable GetUserInnerAskDt(int pagesize, int pageindex, string sWhere, List<dbParam> listPm)
{
string sSql = string.Format(@"select top {0}*
42 from
43 (
44 select row_number() over(order by AskId) as rownumber,* from
45 (select UI.UserId,UI.UserName,UI.Phase,SA.AskId,SA.Title,SA.AskCategory
46 from UserInfor UI inner join StuAsk SA on
47 UI.UserId=SA.UserId) UISA where {2}
48 )A
49 where rownumber>({1}-1)*{0}", pagesize, pageindex, sWhere);
DataTable dt = SqlHelper.ExecuteDataTable(com.Model.Base.DataBaseEnum.sq_ruanmou, sSql, CommandType.Text, listPm);
return dt;
}
}
}
using com.DAL.Base;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Model.ruanmou;
using com.Utility;
using System.Web; namespace DAL.ruanmou
{
public class RNewsDal : System.Web.UI.Page
{
public static BaseDAL<RNews> m_RNewsDal = new BaseDAL<RNews>();
}
}
RNewsDal
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using com.Model.Base; namespace Model.ruanmou
{
public class RNews : BaseModel
{
public RNews()
{
PrimaryKey = "NewsId";
DataBaseName = DataBaseEnum.sq_ruanmou;
} public int NewsId { get; set; }
public string Title { get; set; }
public string Text { get; set; }
public DateTime CreatedTime { get; set; }
public string NewsClass { get; set; }
public int ViewCount { get; set; } }
}
RNews
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using com.Model.Base; namespace Model.ruanmou
{
public class StuAsk : BaseModel
{
public StuAsk()
{
PrimaryKey = "AskId";
DataBaseName = DataBaseEnum.sq_ruanmou;
} public int AskId { get; set; }
public string Title { get; set; }
public string Text { get; set; }
public int AskCategory { get; set; }//1表示前端,2表示数据库,3表示.net,4表示ps
public DateTime CreateTime { get; set; }
public int UserId { get; set; }
public string ClientIP { get; set; }
}
}
StuAsk
联合查询到gridview的更多相关文章
- SQL联合查询:子表任一记录与主表联合查询
今天有网友群里提了这样一个关于SQL联合查询的需求: 一.有热心网友的方案: 二.我的方案: select * from ( select a.*,(select top 1 Id from B as ...
- SQL 语句与性能之联合查询和联合分类查询
select * from t1 left join t2 on t2.sysno =t1.ASysNo left join t3 on t3.sysno =t2.ASysNo left join t ...
- myBatis中 collection 或 association 联合查询 中column 传入多个参数值
下面是一个树形结构表自连接 联合查询 Demo <resultMap id="BaseResultMap" type="com.maidan.daas.entit ...
- EF联合查询,如何设置条件过滤从表数据
最近在使用EF进行联合查询过程中,遇到了一件不开心的事情. 已禁用懒加载 var post = await _repository.GetMyPostById(blogId, postId).AsNo ...
- 【转】Mysql联合查询union和union all的使用介绍
Mysql的联合查询命令UNION和UNION ALL,总结了使用语法和注意事项,以及学习例子和项目例子,需要的朋友可以参考下 一.UNION和UNION ALL的作用和语法 UNION 用于合... ...
- SQL联合查询(内联、左联、右联、全联)的语法(转)
最近在做一个比较复杂的业务,涉及的表较多,于是在网上找了一些sql联合查询的例子进行研究使用. 概述: 联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer j ...
- MySQL数据库8 -子查询,联合查询
一 使用IN关键字的子查询 问题: 查询游戏类型是'棋牌类' 的游戏的分数信息 - 游戏分数表中并未包含游戏类型信息 思路一:采用链接查询 思路二: 分两步进行,首先找到所以'棋牌类'游戏的编号,再以 ...
- SQL联合查询(内联、左联、右联、全联)的语法
联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer join .右联right outer join .全联full outer join 的好处及用法. 联 ...
- SQL联合查询两个表的数据
刚有个项目,需要查询水位数据表中的水位信息,及查询降雨量表中统计时段降雨量的数据,以计算出日降雨量,而且时段是前一天8时到后一天8时总共24个小时. 两个子查询: 1.根据当前时间判断统计前天8时到今 ...
随机推荐
- [国嵌攻略][164][USB驱动程序设计]
USB驱动模型 1.USB host controller driver(主控器驱动):为USB主控制器提供驱动程序 2.USB core(USB核心):连接USB主控制器驱动和USB设备驱动 3.U ...
- Java中Calendar.DAY_OF_WEEK、DAY_OF_MONTH需要减一的原因
Java中对日期的处理需要用到Calendar类,其中有几个方法在使用时需要新手注意.1. 在获取月份时,Calendar.MONTH + 1 的原因(Java中Calendar.MONTH返回的数值 ...
- sql for xml 输出结果带单引号出现转成&apos的解决方案
select '''' + ID +''',' from 表 for xml path('') 此SQL语句,输出结果如‘1’,’2‘,’3‘, 但是在因xml会出现path转译的问题将‘转成&am ...
- linux 下 用phpmailer类smtp发送邮件始终不成功,提示:ERROR: Failed to co
https://zhidao.baidu.com/question/509191264.html?fr=iks&word=PHPMailerSMTP+connect()+failed& ...
- 人人都是CEO
在这个互联网崛起的时代有些流行说法,比如:人人都是产品经理,人人都是程序员以突显行业繁荣的特点,但从更基本的出发点,难道人人不都是 CEO 么?个人的 CEO. 从这个名字套路出发,我沿着想了下去,作 ...
- Spring学习之路三——第一个Spring程序(体会IoC)
体会IoC:Spring通过一种称作控制反转(IoC)的技术促进了松耦合.当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象.你可以认为IoC与JN ...
- 分布式CAP原理
根据维基百科定义[CAP] 根据定理,一个分布式系统最多只能满足其中两项, 不可能同时满则C-A-P三项 首先说一下对各项原则的理解 (1)一致性C: 单机环境下, 数据只有一份,所有的客户端访问的是 ...
- Spring Boot实战:拦截器与过滤器
一.拦截器与过滤器 在讲Spring boot之前,我们先了解一下过滤器和拦截器.这两者在功能方面很类似,但是在具体技术实现方面,差距还是比较大的.在分析两者的区别之前,我们先理解一下AOP的概念,A ...
- 自己动手搭建一个简易的SpringBoot环境
什么是springboot? Spring Boot俗称微服务.Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特 ...
- Spring AOP中 args和arg-names的区别
这两天在看aop aspectj的各种语法,发现里面有两个概念 args和arg-names很容易混淆,网上也基本没说清楚,所以就动手试了一下,发现还是自己试试比较好理解 先说结论: args是和ex ...