📄 topicaccess.cs
字号:
using System;using System.Collections;using Stella.Model;using Stella.Utility;using System.Data;using System.Data.SqlClient;namespace Stella.SQLServerDAL{ /// <summary> /// TopicAccess 的摘要说明。 /// </summary> public class TopicAccess { private string connString=ConfigHelper.ConnString; #region FillWithArts
/// <summary>
/// 使用帖子填充主题
/// </summary>
/// <param name="topic">要填充的主题</param>
/// <param name="pageSize">每页大小</param>
/// <param name="pageNumber">当前页数</param>
/// <returns>该主题的记录总数 </returns>
public int FillWithArts(Topic topic,int pageSize,int pageNumber)
{
SqlParameter[] parms=this.getFillWithArtsParms(); this.setFillWithArtsParms(parms,topic.Tid,pageSize,pageNumber);
int count=0;
using(SqlDataReader sdr=SQLHelper.ExecuteReader(connString,CommandType.StoredProcedure,"arts_selectInfoByTid",parms))
{
Art art;
Member m;
int num=0;
//如为第一页,则需要先加入楼主贴
if(pageNumber==1)
{
if(sdr.Read())
{
art=new TopArt();
art.Number=++num;
art.Aid=sdr.GetInt32(0);
art.Caption=sdr.GetString(1);
art.Content=sdr.GetString(2);
//art.AddedMember=sdr.GetString(3);
art.AddedDate=sdr.GetDateTime(4);
m=new Member();
m.Uid=sdr.GetInt32(5);
m.Name=sdr.GetString(6);
m.Head=sdr.GetString(7);
m.ArtCount=sdr.GetInt32(8);
m.Email=sdr.GetString(9);
m.Hp=sdr.GetString(10);
m.Qq=sdr.GetString(11);
m.Signature=sdr.GetString(12);
m.Lv=sdr.GetInt16(13);
m.RegDate=sdr.GetDateTime(14);
art.AddedMember=m;
topic.AddArt(art);
//移动到回复的结果集
sdr.NextResult();
}
}
//加入回复贴
while(sdr.Read())
{
art=new CommonArt();
art.Number=++num;
art.Aid=sdr.GetInt32(0);
art.Caption=sdr.GetString(1);
art.Content=sdr.GetString(2);
//art.AddedMember=sdr.GetString(3);
art.AddedDate=sdr.GetDateTime(4);
//art.ReplyTid=sdr.GetInt32(15);
m=new Member();
m.Uid=sdr.GetInt32(5);
m.Name=sdr.GetString(6);
m.Head=sdr.GetString(7);
m.ArtCount=sdr.GetInt32(8);
m.Email=sdr.GetString(9);
m.Hp=sdr.GetString(10);
m.Qq=sdr.GetString(11);
m.Signature=sdr.GetString(12);
m.Lv=sdr.GetInt16(13);
m.RegDate=sdr.GetDateTime(14);
art.AddedMember=m;
topic.AddArt(art);
}
sdr.NextResult();
if(sdr.Read())
count=sdr.GetInt32(0);
}
return count;
}
private SqlParameter[] getFillWithArtsParms()
{
SqlParameter[] parms=SQLHelper.GetCachedParameters("FillWithArts");
if(parms==null)
{
parms=new SqlParameter[]{
new SqlParameter("@tid",SqlDbType.Int,0),
new SqlParameter("@pageSize",SqlDbType.Int,0),
new SqlParameter("@pageNumber",SqlDbType.Int,0),
};
SQLHelper.CacheParameters("FillWithArts",parms);
}
return parms;
}
private void setFillWithArtsParms(SqlParameter[] parms,int tid,int pageSize,int pageNumber)
{
parms[0].Value=tid;
parms[1].Value=pageSize;
parms[2].Value=pageNumber;
}
#endregion }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -