
 
 | 
| 技术资料  > .Net专区 > C#语言 : 利用c#制作简单的留言板(1) |  
利用c#制作简单的留言板(1) March 25,2004 |  
首先要感谢bigeagle的帮助,这个也是参考她的bbs做成的 
留言板分三个模块:列出留言列表、显示详细内容、发表留言 
notepage.cs 
namespace notpage 
{ 
    using System; 
    using System.Data.SQL ; 
    using System.Data ; 
    using System.Collections ; 
    </P><P>         
    //////////////////////////////////////////////////////////////////// 
    // 
    // Class Name :       留言板 
    // 
    // Description:       构造一个留言板对象 
    // 
    // date:              2000/06/06 
    // 
    // 作者:              天啦 
    /// ////////////////////////////////////////////////////////////////</P><P> 
    /// <summary> 
    ///    Summary description for notepage. 
    /// </summary> 
     
      
    public class notepage 
    { 
        //私有变量 
     
        private int       n_intID    ;            //ID编号 
        private string n_strTitle ;            //主题 
        private string n_strAuthor ;        //留言人 
        private string n_strContent ;        //留言内容 
        private DateTime n_dateTime ;        //留言时间</P><P>         
        //属性 
    </P><P>        public int ID 
        { 
            get 
            { 
                return n_intID ; 
            } 
            set  
            { 
                n_intID = value; 
            } 
        }</P><P>        public string Title  
        { 
            get 
            { 
                return n_strTitle ; 
            } 
            set 
            { 
                n_strTitle = value; 
            } 
        }</P><P>        public string Author 
        { 
            get 
            { 
                return n_strAuthor ; 
            } 
            set 
            { 
                n_strAuthor = value ; 
            } 
        } 
        public string Content 
        { 
            get 
            { 
                return n_strContent ; 
            } 
            set 
            { 
                n_strContent = value ; 
            } 
        } 
        public DateTime adddate 
        { 
             
            get 
            { 
                return n_dateTime; 
            } 
            set 
            { 
                n_dateTime = value; 
            } 
        } 
        //构造函数 
          public notepage() 
        { 
            // 
            // TODO: Add Constructor Logic here 
            // 
            this.n_intID = 0 ; 
            this.n_strTitle = "" ; 
            this.n_strAuthor = "" ; 
            this.n_strContent = "" ; 
            this.n_dateTime = System.DateTime.Now; 
             
        }</P><P>        /// <summary> 
        ///  
        /// 取得留言的内容 
        ///  
        /// </summary> 
        /// <param name="a_intID"> </param> 
        public notepage GetTopic(int a_intID) 
        { 
            // 
            // TODO: Add Constructor Logic here 
            // 
            </P><P> 
            //读取数据库 
            myconn myConn = new myconn(); 
             
            SQLCommand myCommand = new SQLCommand() ; 
            myCommand.ActiveConnection = myConn ; 
            myCommand.CommandText = "n_GetTopicInfo" ;    //调用存储过程 
            myCommand.CommandType = CommandType.StoredProcedure ; 
            myCommand.Parameters.Add(new SQLParameter("@a_intTopicID" , SQLDataType.Int)) ; 
            myCommand.Parameters["@a_intTopicID"].Value = a_intID ;</P><P>            notepage objNp = new notepage(); 
            try 
            {     
                 
                myConn.Open() ; 
                SQLDataReader myReader ; 
                myCommand.Execute(out myReader) ; 
                if (myReader.Read()) 
                { 
                    objNp.ID = (int)myReader["ID"] ; 
                    objNp.Title = (string)myReader["Title"] ; 
                    objNp.Author  = (string)myReader["Author"] ; 
                    objNp.Content = (string)myReader["Content"]; 
                    objNp.adddate = (DateTime)myReader["adddate"]; 
                } 
                </P><P>                 
                //清场 
                myReader.Close(); 
                myConn.Close() ;</P><P>            } 
            catch(Exception e) 
            { 
                throw(new Exception("取贴子失败:" + e.ToString())) ; 
            } 
            return objNp; 
             
        }</P><P>        /// <summary> 
        ///  
        /// 目的:将留言的内容入库 
        ///  
        /// 利用构造函数来传递信息 
        ///  
        /// </summary> 
        /// <param name="n_Topic"> </param> 
        public bool AddTopic(notepage n_Topic) 
        { 
            // 
            // TODO: Add Constructor Logic here 
            // 
             
            //读取数据库 
            myconn myConn = new myconn(); 
             
            SQLCommand myCommand = new SQLCommand() ; 
            myCommand.ActiveConnection = myConn ; 
            myCommand.CommandText = "n_addTopic" ;    //调用存储过程 
            myCommand.CommandType = CommandType.StoredProcedure ; 
            myCommand.Parameters.Add(new SQLParameter("@a_strTitle" , SQLDataType.VarChar,100)) ; 
            myCommand.Parameters["@a_strTitle"].Value = n_Topic.Title ;</P><P>            myCommand.Parameters.Add(new SQLParameter("@a_strAuthor" , SQLDataType.VarChar,50)) ; 
            myCommand.Parameters["@a_strAuthor"].Value = n_Topic.Author ;</P><P>            myCommand.Parameters.Add(new SQLParameter("@a_strContent" , SQLDataType.VarChar,2000)) ; 
            myCommand.Parameters["@a_strContent"].Value = n_Topic.Content ;</P><P>            try 
            {     
                 
                myConn.Open() ; 
                myCommand.ExecuteNonQuery() ; 
                                 
                //清场 
                 
                myConn.Close() ;</P><P>            } 
            catch(Exception e) 
            { 
                throw(new Exception("取贴子失败:" + e.ToString())) ; 
            } 
            return true; 
                 
        </P><P>        }</P><P> 
        /// <summary> 
        /// 取的贴子列表 
        /// </summary> 
        /// <remarks> 
        /// 返回一个Topic数组 
        /// </remarks> 
        public ArrayList GetTopicList() 
        { 
            //定义一个forum数组做为返回值 
            ArrayList arrForumList =new ArrayList() ;</P><P>            //从数据库中读取留言列表 
            myconn myConn = new myconn(); 
            SQLCommand myCommand = new SQLCommand() ; 
            myCommand.ActiveConnection = myConn ; 
            myCommand.CommandText = "n_GetTopicList" ;    //调用存储过程 
            myCommand.CommandType = CommandType.StoredProcedure ;</P><P>            try 
            { 
                myConn.Open() ; 
                SQLDataReader myReader ; 
                myCommand.Execute(out myReader) ;</P><P>                for (int i = 0 ; myReader.Read() ; i++) 
                { 
                    notepage objItem = new notepage() ; 
                    objItem.ID = myReader["ID"].ToString().ToInt32() ; 
                    objItem.Title = myReader["Title"].ToString() ; 
                    objItem.Author = myReader["Author"].ToString() ; 
                    objItem.adddate = myReader["adddate"].ToString().ToDateTime();     
                    objItem.Content = myReader["Content"].ToString(); 
                                                         
                    arrForumList.Add(objItem) ; 
                }</P><P>                 
                //清场 
                myReader.Close(); 
                myConn.Close() ;</P><P>            } 
            catch(SQLException e) 
            { 
                throw(new Exception("数据库出错:" + e.ToString())) ; 
                //return null ; 
            }</P><P>            return arrForumList ; 
        } 
             
    } 
} 
 
         
         |  
 
 | 
  
Copyright © 2001-2008 Shenzhen Hiblue Software Team All rights reserved