显示上一条新闻 下一条新闻

显示上一条新闻 下一条新闻 这个经常在新闻的内容的下面会显示出来,方便用户浏览,这个很好实现,看下面的sql语句就知道了

假设当前NewsID=2 select NewsTitle from NewsTable where NewsID= (select top 1 NewsID from NewsTable where NewsID>2 order by NewsID asc) or NewsID=(select top 1 NewsID from NewsTable where NewsID<2 order by NewsID desc)

这个时候我们就会很明白

上一条新闻就是

select NewsTitle from NewsTable where NewsID=(select top 1 NewsID from NewsTable where NewsID<2 order by NewsID desc)

下一条新闻就是

select NewsTitle from NewsTable where NewsID=(select top 1 NewsID from NewsTable where NewsID>2 order by NewsID asc)

到时候写个方法,将当前的id作为参数就可以很好的是实现了!

 

下面是自己总结的代码,到时候直接套用:

数据层:

ExpandedBlockStart.gif View Code
     ///   <summary>
        
///  上一篇  下一篇
        
///   </summary>
        
///   <param name="id"></param>
        
///   <param name="strOrder"></param>
        
///   <param name="FH"></param>
        
///   <returns></returns>
         public  Jiu.Model.Lt_Article GetTitle( int  id, string  btype, string  strOrder,  string  FH)
        {
            StringBuilder strSql 
=   new  StringBuilder();
            strSql.Append(
" select top 1 id ,title from Lt_Article where " );
            strSql.Append(
"  id "   +  FH  +  id  +   "  and B_Sort= " + btype + "   order by  "   +  strOrder);
            Jiu.Model.Lt_Article model 
=   new  Jiu.Model.Lt_Article();
            DataSet ds 
=  DbHelperOleDb.Query(strSql.ToString());
            
if  (ds.Tables[ 0 ].Rows.Count  >   0 )
            {
                
if  (ds.Tables[ 0 ].Rows[ 0 ][ " id " ].ToString()  !=   "" )
                {
                    model.Id 
=   int .Parse(ds.Tables[ 0 ].Rows[ 0 ][ " id " ].ToString());
                }
                model.Title 
=  ds.Tables[ 0 ].Rows[ 0 ][ " title " ].ToString();
                
return  model;
            }
            
else
            {
                
return   null ;
            }

        }

表示层:

页面:

 

ExpandedBlockStart.gif View Code
  < div  class = " productd2 " >
                            
< div style = " width:100%; text-align:center; margin-top:80px; margin-bottom:10px " >< span runat = " server "  id = " Up " >< span style = " font-size:14px; color:Green " > 前一篇: </ span >< asp:Label ID = " lblUp "  runat = " server "  Text = " Label " ></ asp:Label ></ span >   < span style = " margin-left:40px "  runat = " server "  id = " Down " >< span style = " font-size:14px; color:Green " > 后一篇: </ span >< asp:Label ID = " lblDown "  runat = " server "  Text = " Label " ></ asp:Label ></ span ></ div >
                    
</ div >

cs代码

 

ExpandedBlockStart.gif View Code
  // 上一篇 后一篇
     public   void  UpAndDownNews( int  bid,  int  id)
    {
        Jiu.Model.Lt_Article NewsInfoDown 
=  NewsManager.GetTitle(id,bid.ToString(),  " id desc " " < " );
        Jiu.Model.Lt_Article NewsInfoUp 
=  NewsManager.GetTitle(id,bid.ToString(),  " id asc " " > " );
        
if  (NewsInfoUp  !=   null )
        {
            
this .lblUp.Text  =   " <a href='NewInfo.aspx?bid= " + bid + " &id= "   +  NewsInfoUp.Id  +   " ' title=' "   +  NewsInfoUp.Title  +   " '> "   +  getTitle(NewsInfoUp.Title)  +   " </a> " ;
        }
        
else
        {
            Up.Visible 
=   false ;
        }
        
if  (NewsInfoDown  !=   null )
        {
            
this .lblDown.Text  =   " <a href='NewInfo.aspx?bid= "   +  bid  +   " &id= "   +  NewsInfoDown.Id  +   " ' title=' "   +  NewsInfoDown.Title  +   " '> "   +  getTitle(NewsInfoDown.Title)  +   " </a> " ;
        }
        
else
        {
            Down.Visible 
=   false ;
        }

    }

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值