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. easyUI返回类型total,rows

  2. 解析Python中的yield关键字

    前言 python中有一个非常有用的语法叫做生成器,所利用到的关键字就是yield.有效利用生成器这个工具可以有效地节约系统资源,避免不必要的内存占用. 一段代码 def fun(): for i i ...

  3. UE4 径向模糊radiu blur

    hlsl代码为: float2 ScreenMult = ; ; ] = {-0.08,-0.05,-0.03,-0.02,-0.01,0.01,0.02,0.03,0.05,0.08}; float ...

  4. 学习JVM-GC收集器

    1. 前言 在上一篇文章中,介绍了JVM中垃圾回收的原理和算法.介绍了通过引用计数和对象可达性分析的算法来筛选出已经没有使用的对象,然后介绍了垃圾收集器中使用的三种收集算法:标记-清除.标记-整理.标 ...

  5. CCF系列之相反数(201403-1)

    试题名称: 相反数 试题编号: 201403-1时间限制: 1.0s 内存限制: 256.0MB 问题描述 有 N 个非零且各不相同的整数.请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对 ...

  6. IO 异常:The Network Adapter could not establish the connection 怎么解决

    IO 异常:The Network Adapter could not establish the connection 怎么解决

  7. Python-Blog1-搭建开发环境

    注:本系列是根据廖雪峰python实战过程,详情可见(https://www.liaoxuefeng.com/) 环境准备 Python 版本:Python 3.X,查看python版本python ...

  8. 使用 ServiceAnt 更好地解耦你的程序

    今天要厚着脸皮给大家推荐一个自己做的通信中间件--ServiceAnt,目前已经在我们团队的两个产品线上投入了使用. ServiceAnt是什么 它最初的定位是ESB(企业服务总线),但目前还没有达到 ...

  9. Centos硬盘IO性能检测命令iostat[转]

    Centos硬盘IO性能检测命令iostat[转] 在Linux下频繁存取文件后,物理内存会很快被用光,当程序结束后,内存不会被正常释放,而是一直作为caching.这个问题,貌似有不少人在问,不过都 ...

  10. js 原型 函数和对象的关系

    函数就是对象的一种  instanceof  可以做判断 var fn = function(){}; fn instanceof Object //true Object构造函数的prototype ...