ASP.NET动态网站制作(29)-- 正则
前言:继续讲框架,然后介绍正则的相关知识。
内容:
1.封装分页方法,方便以后调用;响应的CSS代码也可以封装。
2.WEB层里面的页面名称不要和model和dal里面的名称相同。
3.两个表联合查询的方法,实现分页效果:
public class StuAskDAL
{
public static BaseDAL<StuAsk> m_StuAskDal = new BaseDAL<StuAsk>();
// 获取到用户信息表和帖子表的联合数据
public static DataTable GetStuInnerAsk(int pageindex, int pagesize, string strWhere)
{
string strSql = string.Format(@"select top {0} *from
(select ROW_NUMBER() over (order by UserId) as rownumber,* from
(
select UI.UserId,UI.RealName,UI.UserName,UI.Pwd,UI.Phase,UI.QQ,SA.AskId,
SA.Title,SA.AskCategory from UserInfor UI inner join StuAsk SA on
UI.UserId=SA.UserId where {2}
)AB
)B where rownumber>{0}*({1}-1) ", pagesize, pageindex, strWhere);
DataTable dt = SqlHelper.ExecuteDataTable(DataBaseEnum.con, strSql, CommandType.Text, null);
return dt;
}
// 获取到用户名和帖子表的总记录数
public static int GetStuInnerAskCount()
{
string strSql = @"select UI.UserId,UI.RealName,UI.UserName,UI.Pwd,UI.Phase,UI.QQ,SA.AskId,
SA.Title,SA.AskCategory from UserInfor UI inner join StuAsk SA on
UI.UserId=SA.UserId";
DataTable dt = SqlHelper.ExecuteDataTable(DataBaseEnum.con, strSql, CommandType.Text, null);
return dt.Rows.Count;
}
}
public partial class UserInnerAsk : System.Web.UI.Page
{
private int PageCount = ;
private int PageSize = ;//一页多少条数据
private int _pageIndex;
public int PageIndex
{
get
{
try
{
_pageIndex = Request.QueryString["page"] == null ? : Convert.ToInt32(Request.QueryString["page"].ToString());
}
catch
{
_pageIndex = ;
}
return _pageIndex;
}
set { _pageIndex = value; }
}
public string GetWhere()
{
StringBuilder sb = new StringBuilder();
sb.Append("1=1");
if (!string.IsNullOrEmpty(txtQQ.Text.Trim()) && WebSafe.SqlInsert(txtQQ.Text.Trim()))
{
sb.Append(string.Format(" and UI.QQ={0}", txtQQ.Text.Trim()));
}
return sb.ToString();
}
protected void Page_Load(object sender, EventArgs e)
{
DataTable dt = StuAskDAL.GetStuInnerAsk(PageIndex, PageSize, GetWhere());
GridView1.DataSource = dt;
GridView1.DataBind();
}
public string GetPager()
{
string s = Pager.GetPagerHtml(PageIndex, PageSize, StuAskDAL.GetStuInnerAskCount(), "UserInnerAsk.aspx");
return s;
}
protected void btnSel_Click(object sender, EventArgs e)
{ }
}
4.和数据库交互总结:
(1)对于一张表的话,用GetModel()获取到某一行的数据;GetCount()获取到记录数;GetList()获取到一个集合;Delete()删除;Update()更改;Add()添加。
(2)对于多表联合查询,用SqlHelper。
5.正则表达式:用于数据匹配。用于注册等场合,还可用于抓取数据。
6.测试正则表达式的一个小工具:tool.chinaz.com/regex/。
后记:
ASP.NET动态网站制作(29)-- 正则的更多相关文章
- ASP.NET动态网站制作(3)--css(2)
前言:css分为四次课讲完,第一节课内容见ASP.NET动态网站制作(2)--css(1),接下来的内容会涉及到定位.浮动.盒子模型(第二次课).css的具体应用(第三次课).css3(第四次课).今 ...
- ASP.NET动态网站制作(20)-- C#(3)
前言:C#的第三节课,继续上次课的内容,依旧围绕基础的只是讲解. 内容: 1.StringBuilder类:由于string类一旦创建,则不能更改.如果做字符串拼凑的话,将会非常耗费空间,如: str ...
- ASP.NET动态网站制作(1)--html
前言:正式上课的第一课,讲的是前端部分的最基础内容:html. 前端:html,css,js 数据库:sql server 动态部分:.net,c#... IIS(Internet Informati ...
- ASP.NET动态网站制作(0)
前言:一直想系统地学习一下网站建设的相关内容,看过相关的书籍,也跟着视频学过,但总觉得效率不高,学过的东西印象不深刻,或许还是自己动手实践的少.无意中免费听了一堂讲ASP.NET网站建设的课,觉得性价 ...
- ASP.NET动态网站制作(30)-- WEBService
前言:继续讲正则表达式,然后介绍一下webservice. 内容: 1.匹配QQ号的正则表达式:^[1-9]\d{4,10}$:匹配手机号的正则表达式:^(0|86)?(13|14|15|18)[0- ...
- ASP.NET动态网站制作(28)-- 三层框架(2)
前言:三层框架的第二节课,继续上次课的内容. 内容: 1.三层框架的使用目的:可以将视图层和业务逻辑层及实体层分开,可以提高代码的扩展性,安全性,可以实现程序的低耦合性. 2.GetModel方法及G ...
- ASP.NET动态网站制作(26)-- Ajax
前言:这节课讲解关于Ajax的相关内容. 内容: 1.当点击页面中的一个按钮提交数据或请求数据的时候,整个页面的信息都会提交(不管信息是否是提交或者请求的数据,页面中所有的数据都提交),这样耗用的时间 ...
- ASP.NET动态网站制作(24)-- ADO.NET(3)
前言:ADO.NET的第三节课.今天主要讲SQL Helper. 内容: 1.DataReader和DataSet的区别: (1)DataReader是一行一行地读,且只能向前读:DataSet是一次 ...
- ASP.NET动态网站制作(22)-- ADO.NET(1)
前言:这节课开始真正地学习WEB开发,ADO.NET就是一组允许.NET开发人员使用标准的.机构化的,甚至无连接的方式与数据交互的技术.所属的类库为:System.Data.dll. 内容: 1.AD ...
随机推荐
- Gradle项目学习 & HttpAsyncClient学习 & CountDownLatch学习
装了Intellij,就是装了Gradle. 新建一个Gradle项目.然后下面这个页面要勾选上面两项: Use auto-import和Create directories for empty co ...
- GPU Skin
http://blog.csdn.net/leonwei/article/details/77387357 TPOSE存vbo 每根骨骼的matrices存在貼圖裏用vertex fetch 做GPU ...
- IBM AppScan安全測试一例——已解密的登录请求
问题严重级别:高 此类问题在做政府项目(第三方软件评測中心)验收的时,须要马上整改.例如以下图:
- Java笔记9:Spring简单Demo
1 下载spring-framework-3.0.5.RELEASE-with-docs.zip和spring-framework-3.0.5.RELEASE-dependencies.zip,放 ...
- 搭建MongoDB分片集群
在部门服务器搭建MongoDB分片集群,记录整个操作过程,朋友们也可以参考. 计划如下: 用5台机器搭建,IP分别为:192.168.58.5.192.168.58.6.192.168.58.8.19 ...
- hibernate.cfg.xml文件连接mySql、Oracle、SqlServer配置
1.连接mySql,文件配置如下: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibe ...
- 让C#可以像Javascript一样操作Json DynamicJson
http://blog.csdn.net/lisenyang/article/details/52535314
- JSON字符串化
1.JSON字符串化 JSON字符串化有2个可选参数,分别是replacer和space. 第一个可选参数replacer,它可以是数组或者函数.用来指定哪些属性被处理,哪些属性被排除. 第二个可选参 ...
- CSS/JavaScript hacks,browserhacks使用
1.网址 http://browserhacks.com/ 2.使用 (1)JavaScript Hacks 浏览器js判断 (2)条件注释hack (3)Media Query Hacks 媒体查询 ...
- hdu3415 Max Sum of Max-K-sub-sequence 单调队列
//hdu3415 Max Sum of Max-K-sub-sequence //单调队列 //首先想到了预处理出前缀和利用s[i] - s[j]表示(j,i]段的和 //之后的问题就转换成了求一个 ...