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的更多相关文章

  1. SQL联合查询:子表任一记录与主表联合查询

    今天有网友群里提了这样一个关于SQL联合查询的需求: 一.有热心网友的方案: 二.我的方案: select * from ( select a.*,(select top 1 Id from B as ...

  2. SQL 语句与性能之联合查询和联合分类查询

    select * from t1 left join t2 on t2.sysno =t1.ASysNo left join t3 on t3.sysno =t2.ASysNo left join t ...

  3. myBatis中 collection 或 association 联合查询 中column 传入多个参数值

    下面是一个树形结构表自连接 联合查询 Demo <resultMap id="BaseResultMap"  type="com.maidan.daas.entit ...

  4. EF联合查询,如何设置条件过滤从表数据

    最近在使用EF进行联合查询过程中,遇到了一件不开心的事情. 已禁用懒加载 var post = await _repository.GetMyPostById(blogId, postId).AsNo ...

  5. 【转】Mysql联合查询union和union all的使用介绍

    Mysql的联合查询命令UNION和UNION ALL,总结了使用语法和注意事项,以及学习例子和项目例子,需要的朋友可以参考下 一.UNION和UNION ALL的作用和语法 UNION 用于合... ...

  6. SQL联合查询(内联、左联、右联、全联)的语法(转)

    最近在做一个比较复杂的业务,涉及的表较多,于是在网上找了一些sql联合查询的例子进行研究使用. 概述: 联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer j ...

  7. MySQL数据库8 -子查询,联合查询

    一 使用IN关键字的子查询 问题: 查询游戏类型是'棋牌类' 的游戏的分数信息 - 游戏分数表中并未包含游戏类型信息 思路一:采用链接查询 思路二: 分两步进行,首先找到所以'棋牌类'游戏的编号,再以 ...

  8. SQL联合查询(内联、左联、右联、全联)的语法

    联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer join .右联right outer join .全联full outer join 的好处及用法. 联 ...

  9. SQL联合查询两个表的数据

    刚有个项目,需要查询水位数据表中的水位信息,及查询降雨量表中统计时段降雨量的数据,以计算出日降雨量,而且时段是前一天8时到后一天8时总共24个小时. 两个子查询: 1.根据当前时间判断统计前天8时到今 ...

随机推荐

  1. 从XMLHttpRequest请求响应里getResponseHeader(header)报错:Refused to get unsafe header "**" 问题解决

    问题产生原因: 原因1:W3C的 xhr 标准中做了限制,规定客户端无法获取 response 中的 Set-Cookie.Set-Cookie2这2个字段,无论是同域还是跨域请求: 原因2:W3C ...

  2. 【端-iOS】给iOS开发入门者编码的一点建议

    规范编码可以提高代码的可读性,降低维护成本.作为一个程序员,要对自己写的代码负责,虽然bug无可避免,但是写代码时最基本的编码规则还是应该遵守的,否则不是坑自己就是坑别人,因为代码肯定是要维护的. 下 ...

  3. Spark算子--take、top、takeOrdered

    转载请标明出处http://www.cnblogs.com/haozhengfei/p/552e8a32eee9d50fe394dfdcb14c78f3.html take.top.takeOrder ...

  4. HTTP协议简介

    一.简介 HTTP(HyperText Transfer Protocol, 超文本传输协议) 是访问互联网使用的核心通信协议,也是所有web应用程序使用的通信协议.消息模型:客户端发送请求消息,服务 ...

  5. Dubbo底层采用Socket进行通信详解

    由于Dubbo底层采用Socket进行通信,自己对通信理理论也不是很清楚,所以顺便把通信的知识也学习一下. n  通信理论 计算机与外界的信息交换称为通信.基本的通信方法有并行通信和串行通信两种. 1 ...

  6. poweshell批量删除某类型文件

    错误方法 rm *.o" -recurse 按照提示,rm(remove-item)是可以递归删除子文件夹的.但是这个方法确实无效.在他们的示例里面找到说明: --------------- ...

  7. JS的for循环小例子

    1.输出1-100的和 var sum = 0; for(var i=1;i<=100;i++){ sum = sum + i; } document.write(sum); 2.输出1-100 ...

  8. junit源码解析--核心类

    JUnit 的概念及用途 JUnit 是由 Erich Gamma 和 Kent Beck 编写的一个开源的单元测试框架.它属于白盒测试,只要将待测类继承 TestCase 类,就可以利用 JUnit ...

  9. myeclipse环境搭建

    公司来了几个新人,老是在教他们环境搭建这些,每次在帮他们调试代码的时候老是不厌其烦的看着他们坐等myeclipse编译了,校验了什么的,而且在编码的时候也不使用快捷键,然后我就只能默默的坐回去了.为了 ...

  10. 华人开创NTP网络授时服务器成功投运世界级超大工程港珠澳大桥

    华人开创NTP网络授时服务器成功投运世界级超大工程港珠澳大桥 本文由北京华人开创公司提供请勿转载 2017年12月中旬,我华人开创生产研发的NTP网络授时服务器成功投运世界级超大工程港珠澳大桥,为这个 ...