牛腩新闻发布系统的视频看了将近半个月的时间,今天成功地把它发布了,哈哈。第一次看教学视频看得这么专注,都不带走思的,很不错。给小牛老师赞一个,嘿嘿!
言归正传,每学完一个阶段,最重要的就是总结,所以就允许我以倒序的形式,颗粒归仓吧!
- 牛腩新闻发布系统的发布
参考博文:
win7下IIS的安装和配置
http://www.jb51.net/article/29787.htm
VS2010网站发布详解
http://wanghaitaoboke.blog.163.com/blog/static/1708725122012527716235/
处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”
http://blog.csdn.net/mazhaojuan/article/details/7660657
- 分页的制作
存储过程:
-- =============================================
-- Author: xuchenyang
-- Create date: 2014-9-3 22:31:21
-- Description: 分页的存储过程
-- =============================================
Create PROCEDURE [dbo].[news_selectByPage]
@startIndex int,
@endIndex int
AS
BEGIN
With temptbl as (
SELECT ROW_NUMBER() OVER (ORDER BY id desc)AS Row,* from news
)
SELECT * FROM temptbl where Row between @startIndex and @endIndex
END
DAL:
#region 选择分页记录
public DataTable SelectNewsByPage(string startIndex, string endIndex)
{
DataTable dt=new DataTable();
string cmdtext = "news_selectByPage";
SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@startIndex",startIndex),
new SqlParameter("@endIndex",endIndex)};
dt = sqlhelper.ExcuteQuery(cmdtext, paras, CommandType.StoredProcedure);
return dt;
}
#endregion
BLL:
#region 分页选择记录
public DataTable SelectNewsByPage(string startIndex, string endIndex)
{
return ndao.SelectNewsByPage(startIndex,endIndex);
}
#endregion
Web:
打开admin/newsmanager.aspx:
工具箱空白处右击--“选择项”--浏览--找到已下载的AspNetPager.dll--拖到页面中
<div>
<webdiyer:AspNetPager ID="anp" runat="server" onpagechanged="anp_PageChanged" PageSize="5" CssClass ="anp">
</webdiyer:AspNetPager>
</div>
protected void Page_Load(object sender, EventArgs e)
{
//判断session里面是否存在管理员
if (Session["admin"] != null && Session["admin"].ToString() == "niunan")
{
//已登录
if (!Page.IsPostBack)
{
//设定分页控件总的记录条数(总的记录条数/每页的记录条数Pagesize=页数)
anp.RecordCount = new NewsManager().SelectAll().Rows.Count;
//绑定新闻
BindNews();
}
}
else
{
//未登录
Response.Redirect("login.aspx");
}
}
#region 绑定新闻列表
private void BindNews()
{
//根据当前页的起止记录的序号,从数据库中选出新闻,并绑定到控件上
repNews.DataSource = new NewsManager().SelectNewsByPage(anp.StartRecordIndex.ToString(), anp.EndRecordIndex.ToString());
repNews.DataBind();
}
#endregion
protected void anp_PageChanged(object sender, EventArgs e)
{
//Response.Write("开始记录数:" + anp.StartRecordIndex + "<br>结束记录数" + anp.EndRecordIndex);
//当前页切换时,更新绑定的新闻
BindNews();
}
CSS样式:
.anp
{
padding-left:200px;}
效果图:
以上的内容很基础,但是重要的是不断积累,尝试和探索!