📄 forumaccess.cs
字号:
using System;using System.Collections;using Stella.Model;using Stella.Utility;using System.Data;using System.Data.SqlClient;namespace Stella.SQLServerDAL{ /// <summary> /// 执行和论坛整体设置有关的操作 /// </summary> /// <remarks> /// 实际生成一个新论坛时,从缓存查找config,从单件获得infosum /// 并不需要使用这里的两个get方法 /// 这些方法可能只是在第一次调用的时候需要 /// </remarks> public class ForumAccess { private string connString=ConfigHelper.ConnString; #region FillWithDistricts
/// <summary>
/// 使用区域填充论坛
/// </summary>
/// <param name="forum">要填充的论坛</param>
public void FillWithDistricts(Forum forum)
{
using(SqlDataReader sdr=SQLHelper.ExecuteReader(connString,CommandType.StoredProcedure,"districts_SelectInfo",null))
{
District di;
while(sdr.Read())
{
di=new District();
di.Did=sdr.GetInt32(0);
di.Dname=sdr.GetString(1);
di.Comment=sdr.GetString(2);
di.Lv=sdr.GetInt16(3);
forum.AddDistrict(di);
}
}
}
#endregion
#region UpdateInfo
/// <summary>
/// 更新论坛统计资料
/// </summary>
/// <param name="info">论坛统计资料</param>
public void UpdateInfoSum(ForumInfoSum info)
{
SqlParameter[] parms=this.getUpdateInfoParms();
this.setUpdateInfoParms(parms,info);
SQLHelper.ExecuteNonQuery(connString,CommandType.StoredProcedure,"info_Update",parms);
}
private SqlParameter[] getUpdateInfoParms()
{
SqlParameter[] parms=SQLHelper.GetCachedParameters("UpdateInfo");
if(parms==null)
{
parms=new SqlParameter[]{
new SqlParameter("@topicSum",SqlDbType.Int,0),
new SqlParameter("@artSum",SqlDbType.Int,0),
new SqlParameter("@hitSum",SqlDbType.Int,0),
new SqlParameter("@viewSum",SqlDbType.Int,0),
new SqlParameter("@memberSum",SqlDbType.Int,0)
};
SQLHelper.CacheParameters("UpdateInfo",parms);
}
return parms;
}
private void setUpdateInfoParms(SqlParameter[] parms,ForumInfoSum info)
{
parms[0].Value=info.TopicSum;
parms[1].Value=info.ArtSum;
parms[2].Value=info.HitSum;
parms[3].Value=info.ViewSum;
parms[4].Value=info.MemberSum;
}
#endregion
#region UpdateConfig
/// <summary>
/// 更新论坛设定
/// </summary>
/// <param name="config">论坛设定</param>
public void UpdateConfig(ForumConfig config)
{
SqlParameter[] parms=this.getUpdateConfigParms();
this.setUpdateConfigParms(parms,config);
SQLHelper.ExecuteNonQuery(connString,CommandType.StoredProcedure,"Config_Update",parms);
}
private SqlParameter[] getUpdateConfigParms()
{
SqlParameter[] parms=SQLHelper.GetCachedParameters("UpdateConfig");
if(parms==null)
{
parms=new SqlParameter[]{
new SqlParameter("@fname",SqlDbType.VarChar,50),
new SqlParameter("@bunner",SqlDbType.VarChar,100),
new SqlParameter("@copyright",SqlDbType.VarChar,200)
};
SQLHelper.CacheParameters("UpdateConfig",parms);
}
return parms;
}
private void setUpdateConfigParms(SqlParameter[] parms,ForumConfig config)
{
parms[0].Value=config.Fname;
parms[1].Value=config.Bunner;
parms[2].Value=config.Copyright;
}
#endregion
#region GetConfig
/// <summary>
/// 得到论坛设定
/// </summary>
/// <returns>论坛设定</returns>
public ForumConfig GetConfig()
{
ForumConfig config=new ForumConfig();
using(SqlDataReader sdr=SQLHelper.ExecuteReader(connString,CommandType.StoredProcedure,"config_SelectInfo",null))
{
if(sdr.Read())
{
config.Fname=sdr.GetString(0); config.Bunner=sdr.GetString(1); config.Copyright=sdr.GetString(2);
}
}
return config;
}
#endregion
#region GetInfoSum
/// <summary>
/// 得到论坛统计资料
/// </summary>
/// <returns>论坛统计资料</returns>
public ForumInfoSum GetInfoSum()
{
ForumInfoSum info=ForumInfoSum.GetInstance();;
using(SqlDataReader sdr=SQLHelper.ExecuteReader(connString,CommandType.StoredProcedure,"config_SelectInfo",null))
{
if(sdr.Read())
{
info.TopicSum=sdr.GetInt32(0); info.ArtSum=sdr.GetInt32(1); info.HitSum=sdr.GetInt32(2); info.ViewSum=sdr.GetInt32(3); info.MemberSum=sdr.GetInt32(4);
}
}
return info;
}
#endregion
}}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -