亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bbsmanager.cs

?? 一個簡單的BBS論壇,雖然簡單點,但功能還是很完善的,非常值得初學者的學習!里面還運用了XML技術!
?? CS
字號:
?using System;
using System.Data;
using System.Data.SqlClient;
using System.Text;
using System.Xml;
using System.IO;

/// <summary>
/// 論壇類別的操作類
/// </summary>
public class BBSManager
{
    //定義常量表示字段名稱或SQL語句。
    private const string SQL_INSERT_BBSINFO = "INSERT INTO bbsinfo VALUES "+
        "(@title,@filename,@posttime,@replycount,@lastreplytime, @postuser,@categoryid)";
    private const string PARM_BBS_TITLE = "@title";
    private const string PARM_BBS_FILENAME = "@filename";
    private const string PARM_BBS_POSTTIME = "@posttime";
    private const string PARM_BBS_REPLYCOUNT = "@replycount";
    private const string PARM_BBS_LASTREPLYTIME = "@lastreplytime";
    private const string PARM_BBS_POSTUSER = "@postuser";
    private const string PARM_BBS_CATEGORYID = "@categoryid";
    private string xmlfilename = "";
	public BBSManager()
	{
	}
    /// <summary>
    /// 添加論壇的類別
    /// </summary>
    /// <param name="name">類別名稱</param>
    /// <param name="des">類別描述信息</param>
    /// <returns>添加是否成功</returns>
    public bool AddBBSCategory(string name,string des )
    {
        //使用StringBuild連接字符串比使用“+”效率高很多
        StringBuilder strSQL = new StringBuilder();
        //創建論壇添加方法的參數
        SqlParameter[] newsParms = new SqlParameter[]{
            new SqlParameter("@name", SqlDbType.NVarChar,20),
            new SqlParameter("@des", SqlDbType.NVarChar,100)};

        //創建執行語句的SQL命令
        SqlCommand cmd = new SqlCommand();
        // 依次給參數賦值
        newsParms[0].Value = name;
        newsParms[1].Value = des;

        //遍歷所有參數,并將參數添加到SqlCommand命令中
        foreach (SqlParameter parm in newsParms)
            cmd.Parameters.Add(parm);
        //獲取數據庫的連接字符串
        using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))
        {
            //加載“添加類別”執行語句
            strSQL.Append("Insert into BBSCategory values(@name,@des)");
            //打開數據庫連接,執行命令
            conn.Open();
            //設置Sqlcommand命令的屬性
            cmd.Connection = conn;
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = strSQL.ToString();
            //執行添加的SqlCommand命令
            int val = cmd.ExecuteNonQuery();
            //清空SqlCommand命令中的參數
            cmd.Parameters.Clear();
            //判斷是否添加成功,注意返回的是添加是否成功,不是影響的行數
            if (val > 0)
                return true;
            else
                return false;
        }
    }
    /// <summary>
    /// 將發帖內容保存到XML文件中的方法
    /// </summary>
    /// <param name="filename">XML文件路徑全名</param>
    /// <param name="title">XML文件路徑全名</param>
    /// <param name="content">XML文件路徑全名</param>
    /// <param name="user">XML文件路徑全名</param>
    public void AddXML(string filename,string title,string content,string user)
    {
        //初始化XML文檔操作類
        XmlDocument mydoc = new XmlDocument();
        //加載指定的XML文件
        mydoc.Load(filename);

        //添加元素-帖子主題
        XmlElement ele = mydoc.CreateElement("title");
        XmlText text = mydoc.CreateTextNode(title);
        //添加元素-發帖時間
        XmlElement ele1 = mydoc.CreateElement("posttime");
        XmlText text1 = mydoc.CreateTextNode(DateTime.Now.ToString());
        //添加元素-內容
        XmlElement ele2 = mydoc.CreateElement("content");
        XmlText text2 = mydoc.CreateTextNode(content);
        //添加元素-發帖人
        XmlElement ele3 = mydoc.CreateElement("postuser");
        XmlText text3 = mydoc.CreateTextNode(user);

        //添加文件的節點-msgrecord
        XmlNode newElem = mydoc.CreateNode("element", "xmlrecord", "");
        //在節點中添加元素
        newElem.AppendChild(ele);
        newElem.LastChild.AppendChild(text);
        newElem.AppendChild(ele1);
        newElem.LastChild.AppendChild(text1);
        newElem.AppendChild(ele2);
        newElem.LastChild.AppendChild(text2);
        newElem.AppendChild(ele3);
        newElem.LastChild.AppendChild(text3);
        //將節點添加到文檔中
        XmlElement root = mydoc.DocumentElement;
        root.AppendChild(newElem);

        //獲取文件路徑
        int index = filename.LastIndexOf(@"\");
        string path = filename.Substring(0, index);
        //新文件名
        path = path + @"\" + xmlfilename + "file.xml";
        //文件創建后必須關閉,否則其他程序無法調用
        FileStream mystream =File.Create(path);
        mystream.Close();

        //保存所有修改-到指定文件中:注意編碼語言的選擇
        XmlTextWriter mytw = new XmlTextWriter(path,Encoding.Default);
        mydoc.Save(mytw);
        mytw.Close();
    }
    /// <summary>
    /// 
    /// </summary>
    /// <param name="title"></param>
    /// <param name="filename"></param>
    /// <param name="replycount"></param>
    /// <param name="categoryid"></param>
    public void AddMsg(string title,string user,int categoryid)
    {
        //使用StringBuild連接字符串比使用“+”效率高很多
        StringBuilder strSQL = new StringBuilder();
        //獲取緩存參數,如果沒有,此方法會自動創建緩存列表
        SqlParameter[] newsParms = GetParameters();
        //創建執行語句的SQL命令
        SqlCommand cmd = new SqlCommand();
        // 依次給參數賦值
        newsParms[0].Value = title;
        //一個獲取文件名的私有方法
        newsParms[1].Value = getFilename().ToString();
        xmlfilename = getFilename().ToString();
        //注意發布的日期取當日
        newsParms[2].Value = DateTime.Now;
        //默認添加的回復數是0
        newsParms[3].Value = 0;
        newsParms[4].Value = DateTime.Now;
        newsParms[5].Value = user;
        newsParms[6].Value = categoryid;

        //遍歷所有參數,并將參數添加到SqlCommand命令中
        foreach (SqlParameter parm in newsParms)
            cmd.Parameters.Add(parm);
        //獲取數據庫的連接字符串
        using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))
        {
            strSQL.Append(SQL_INSERT_BBSINFO);
            //打開數據庫連接,執行命令
            conn.Open();
            //設置Sqlcommand命令的屬性
            cmd.Connection = conn;
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = strSQL.ToString();
            //執行添加的SqlCommand命令
            int val = cmd.ExecuteNonQuery();
            //清空SqlCommand命令中的參數
            cmd.Parameters.Clear();
        }
    }
    /// <summary>
    /// 創建或獲取緩存參數的私有方法
    /// </summary>
    /// <returns>返回參數列表</returns>
    private static SqlParameter[] GetParameters()
    {
        //將SQL_INSERT_NEWSINFO做為哈希表緩存的鍵值
        SqlParameter[] parms = SqlHelper.GetCachedParameters(SQL_INSERT_BBSINFO);

        //首先判斷緩存是否已經存在
        if (parms == null)
        {
            //緩存不存在的情況下,新建參數列表
            parms = new SqlParameter[] {
                    new SqlParameter(PARM_BBS_TITLE, SqlDbType.NVarChar,50),
                    new SqlParameter(PARM_BBS_FILENAME, SqlDbType.NVarChar,100),
                    new SqlParameter(PARM_BBS_POSTTIME, SqlDbType.DateTime),
                    new SqlParameter(PARM_BBS_REPLYCOUNT, SqlDbType.Int),
                    new SqlParameter(PARM_BBS_LASTREPLYTIME, SqlDbType.DateTime),
                    new SqlParameter(PARM_BBS_POSTUSER, SqlDbType.NVarChar, 50),
                    new SqlParameter(PARM_BBS_CATEGORYID, SqlDbType.Int) };

            //將新建的參數列表添加到哈希表中緩存起來
            SqlHelper.CacheParameters(SQL_INSERT_BBSINFO, parms);
        }
        //返回參數數組
        return parms;
    }
    /// <summary>
    /// 更新數據庫中的回復時間
    /// </summary>
    /// <param name="infoid">帖子的ID</param>
    /// <returns>是否更新成功</returns>
    public bool UpdateMsg(int infoid)
    {
        //使用StringBuild連接字符串比使用“+”效率高很多
        StringBuilder strSQL = new StringBuilder();
        //創建論壇添加方法的參數
        SqlParameter[] newsParms = new SqlParameter[]{
            new SqlParameter("@lastposttime", SqlDbType.DateTime),
            new SqlParameter("@infoid", SqlDbType.Int)};

        //創建執行語句的SQL命令
        SqlCommand cmd = new SqlCommand();
        // 依次給參數賦值
        newsParms[0].Value = DateTime.Now;
        newsParms[1].Value = infoid;

        //遍歷所有參數,并將參數添加到SqlCommand命令中
        foreach (SqlParameter parm in newsParms)
            cmd.Parameters.Add(parm);
        //獲取數據庫的連接字符串
        using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))
        {
            //加載“添加類別”執行語句
            strSQL.Append("UPDATE bbsinfo  SET replycount=replycount+1 ,  lastreplytime=@lastposttime  WHERE infoid=@infoid");
            //打開數據庫連接,執行命令
            conn.Open();
            //設置Sqlcommand命令的屬性
            cmd.Connection = conn;
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = strSQL.ToString();
            //執行添加的SqlCommand命令
            int val = cmd.ExecuteNonQuery();
            //清空SqlCommand命令中的參數
            cmd.Parameters.Clear();
            //判斷是否添加成功,注意返回的是添加是否成功,不是影響的行數
            if (val > 0)
                return true;
            else
                return false;
        }
    }
    /// <summary>
    /// 給新建的xml文件起名
    /// </summary>
    /// <returns>返回的是最大號的ID+1</returns>
    private int getFilename()
    {
        int cardrule = 0;
        //設置SQL語句,取最大的ID值
        string strsql = "select top 1 infoid from bbsinfo order by infoid desc ";
        //調用SqlHelper訪問組件的方法返回第一行第一列的值
        try
        {
            cardrule = (int)SqlHelper.ExecuteScalar(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, strsql, null);
            //返回最大值+1
        }
        catch
        {
            //此時數據庫中無數據
            cardrule = 0;
        }
        return cardrule +1;

    }
    /// <summary>
    /// 更新回復內容
    /// </summary>
    /// <param name="filename">文件名</param>
    /// <param name="title">回復主題</param>
    /// <param name="content">回復內容</param>
    /// <param name="user">回復人</param>
    public void UpdateXml(string filename,string title,string content,string user)
    {
        //初始化XML文檔操作類
        XmlDocument mydoc = new XmlDocument();
        //加載指定的XML文件
        mydoc.Load(filename);

        //添加元素-帖子主題
        XmlElement ele = mydoc.CreateElement("title");
        XmlText text = mydoc.CreateTextNode(title);
        //添加元素-發帖時間
        XmlElement ele1 = mydoc.CreateElement("posttime");
        XmlText text1 = mydoc.CreateTextNode(DateTime.Now.ToString());
        //添加元素-內容
        XmlElement ele2 = mydoc.CreateElement("content");
        XmlText text2 = mydoc.CreateTextNode(content);
        //添加元素-發帖人
        XmlElement ele3 = mydoc.CreateElement("postuser");
        XmlText text3 = mydoc.CreateTextNode(user);

        //添加文件的節點-msgrecord
        XmlNode newElem = mydoc.CreateNode("element", "xmlrecord", "");
        //在節點中添加元素
        newElem.AppendChild(ele);
        newElem.LastChild.AppendChild(text);
        newElem.AppendChild(ele1);
        newElem.LastChild.AppendChild(text1);
        newElem.AppendChild(ele2);
        newElem.LastChild.AppendChild(text2);
        newElem.AppendChild(ele3);
        newElem.LastChild.AppendChild(text3);
        //將節點添加到文檔中
        XmlElement root = mydoc.DocumentElement;
        root.AppendChild(newElem);
        //保存所有的修改
        mydoc.Save(filename);
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩网站在线看片你懂的| 久久久亚洲高清| 国产精品欧美一区喷水| 韩国视频一区二区| 欧美大尺度电影在线| 麻豆91精品视频| 欧美日韩中字一区| 日本色综合中文字幕| 91精品综合久久久久久| 日韩黄色免费网站| 亚洲国产精品av| 白白色 亚洲乱淫| 五月天丁香久久| 精品成人私密视频| 在线亚洲高清视频| 久久99在线观看| 国产精品久久久久天堂| 欧美性猛片aaaaaaa做受| 久久精品72免费观看| 国产精品久久久久久久久果冻传媒| 色综合久久久网| 国产最新精品免费| 亚洲成av人片在www色猫咪| 欧美成人女星排行榜| 日韩一区二区三区观看| 欧美性猛交xxxxxx富婆| 色哟哟精品一区| 欧美日韩久久久| 91麻豆123| www.日韩av| 日本韩国欧美在线| 亚洲欧洲性图库| 欧美日韩1区2区| 国产69精品久久久久777| 亚洲一级片在线观看| 亚洲欧洲精品一区二区三区| 国产精品免费观看视频| 亚洲男人的天堂在线观看| 亚洲天堂福利av| 中文字幕第一区| 亚洲一区在线看| 樱花草国产18久久久久| 国产精品午夜电影| 蜜桃视频在线观看一区| 色婷婷av一区二区三区大白胸 | 久久99精品国产.久久久久 | 欧美一区二区三区喷汁尤物| 这里只有精品99re| 精品国产三级a在线观看| 精品欧美一区二区三区精品久久| 欧美日韩国产高清一区二区| 91精品国产一区二区三区蜜臀| 欧美精品xxxxbbbb| 欧美一区二区在线免费观看| 日韩视频免费观看高清完整版在线观看 | 欧美视频在线一区| 91久久精品国产91性色tv| 欧美一区二区精美| 一区二区国产盗摄色噜噜| 国产一区二区三区免费观看| 91麻豆精品视频| 国产人成一区二区三区影院| 午夜精品在线看| 在线影院国内精品| 国产精品天美传媒沈樵| 亚洲一区免费观看| 亚洲午夜免费电影| 99在线精品免费| 中文字幕二三区不卡| 国产伦精品一区二区三区在线观看 | 欧美一区二区在线看| 婷婷综合在线观看| 日本欧美一区二区| 不卡电影一区二区三区| 成人黄页毛片网站| 欧美一区二区三区免费大片 | 亚洲视频一区在线| 久久精品国产澳门| 欧美日韩国产美| 亚洲欧美日韩人成在线播放| 激情综合一区二区三区| 日韩欧美一级在线播放| 日韩激情一二三区| 欧美日韩精品是欧美日韩精品| 久久久亚洲综合| 国产综合色产在线精品| 高清不卡一区二区在线| 欧美日本在线一区| 午夜国产精品一区| 91福利视频久久久久| 欧美韩国日本不卡| 国产美女视频91| 久久精品亚洲精品国产欧美kt∨| 免费成人在线影院| 欧美挠脚心视频网站| 一区二区不卡在线播放 | 麻豆成人久久精品二区三区红| 欧美精品乱人伦久久久久久| 亚洲va欧美va天堂v国产综合| 欧美人与z0zoxxxx视频| 亚洲午夜精品在线| 欧美日韩在线亚洲一区蜜芽| 亚洲一区av在线| 精品国产一区二区三区av性色 | 欧美大片一区二区| 91麻豆成人久久精品二区三区| 精品国产网站在线观看| 老司机精品视频导航| 久久久久久毛片| 韩国在线一区二区| 国产亚洲成av人在线观看导航| 欧美男男青年gay1069videost | 丁香一区二区三区| 色偷偷成人一区二区三区91| 午夜精品久久一牛影视| 一区二区成人在线视频| 亚洲美女视频在线观看| 亚洲免费av在线| 亚洲在线中文字幕| 天堂av在线一区| 欧美aⅴ一区二区三区视频| 日韩成人免费在线| 极品少妇一区二区| 在线视频国产一区| 在线观看网站黄不卡| 欧美欧美欧美欧美| 日韩一级黄色片| 国产成人免费视频| 亚洲国产wwwccc36天堂| 日韩毛片一二三区| 国产精品欧美一区喷水| 亚洲国产高清不卡| 国产精品久久久久久久久久免费看 | 日本sm残虐另类| 麻豆freexxxx性91精品| 奇米影视一区二区三区小说| 热久久久久久久| 蜜臀av性久久久久蜜臀aⅴ| 美女性感视频久久| 极品少妇xxxx偷拍精品少妇| 欧美午夜不卡视频| 欧美一区二区视频在线观看2020| 国产欧美综合色| 国产精品伦理一区二区| 成人免费一区二区三区视频| 亚洲色图欧洲色图婷婷| 亚洲成av人片观看| 蜜桃视频一区二区| av一二三不卡影片| 欧美影院一区二区三区| 精品国产伦一区二区三区免费 | caoporn国产精品| 欧美日韩不卡一区二区| 国产精品日日摸夜夜摸av| 亚洲国产精品嫩草影院| 老鸭窝一区二区久久精品| 91在线无精精品入口| 欧美成人高清电影在线| 精品毛片乱码1区2区3区| 国产精品美女久久久久久久久久久| 一区二区激情视频| 北条麻妃国产九九精品视频| 日韩理论片在线| 丰满白嫩尤物一区二区| 91在线一区二区三区| 久久综合视频网| 久久狠狠亚洲综合| 欧美一级国产精品| 亚洲超碰精品一区二区| 欧美视频第二页| 亚洲综合无码一区二区| 日本久久一区二区| 亚洲免费观看在线观看| 成人国产精品免费观看动漫| 欧美激情一区二区三区蜜桃视频| 免费观看日韩av| 久久综合狠狠综合久久激情| 免费的成人av| 精品国产乱子伦一区| 国产麻豆一精品一av一免费| 欧美一区二区精品| 国产精品久久久久影院| 国产成人av一区二区三区在线观看| 精品福利视频一区二区三区| 一本大道综合伊人精品热热| 亚洲欧美一区二区三区国产精品| 成人小视频免费观看| 自拍偷拍国产亚洲| 欧美在线观看禁18| 亚洲地区一二三色| 精品国产一区二区三区不卡| 丰满放荡岳乱妇91ww| 国产精品国产三级国产专播品爱网| 97精品国产97久久久久久久久久久久| 国产精品免费视频一区| 91精品免费在线| av在线不卡观看免费观看| 午夜精品福利一区二区三区av| 精品国产乱码久久久久久夜甘婷婷 | 午夜精品福利在线|