首先要感謝bigeagle的幫助,這個也是參考她的bbs做成的
留言板分三個模塊:列出留言列表、顯示詳細內容、發表留言
notepage.cs
namespace notpage
{
using System;
using System.Data.SQL ;
using System.Data ;
using System.Collections ;
////////////////////////////////////////////////////////////////////
//
// Class Name : 留言板
//
// Description: 構造一個留言板對象
//
// date: 2000/06/06
//
// 作者: 天啦
/// ////////////////////////////////////////////////////////////////
///
/// Summary description for notepage.
///
public class notepage
{
//私有變量
private int n_intID ; //ID編號
private string n_strTitle ; //主題
private string n_strAuthor ; //留言人
private string n_strContent ; //留言內容
private DateTime n_dateTime ; //留言時間
//屬性
public int ID
{
get
{
return n_intID ;
}
set
{
n_intID = value;
}
}
public string Title
{
get
{
return n_strTitle ;
}
set
{
n_strTitle = value;
}
}
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;
}
///
///
/// 取得留言的內容
///
///
///
public notepage GetTopic(int a_intID)
{
//
// TODO: Add Constructor Logic here
//
//讀取數據庫
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 ;
notepage objNp = new notepage();
try
{ http://www.mscto.com
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"];
}
//清場
myReader.Close();
myConn.Close() ;
}
catch(Exception e)
{
throw(new Exception("取貼子失敗:" e.ToString())) ;
}
return objNp;
}
///
///
/// 目的:將留言的內容入庫
///
/// 利用構造函數來傳遞信息
///
///
///
public bool AddTopic(notepage n_Topic)
{
//
// TODO: Add Constructor Logic here
//
http://www.mscto.com
//讀取數據庫
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 ;
myCommand.Parameters.Add(new SQLParameter("@a_strAuthor" , SQLDataType.VarChar,50)) ;
myCommand.Parameters["@a_strAuthor"].Value = n_Topic.Author ;
myCommand.Parameters.Add(new SQLParameter("@a_strContent" , SQLDataType.VarChar,2000)) ;
myCommand.Parameters["@a_strContent"].Value = n_Topic.Content ;
try
{
myConn.Open() ;
myCommand.ExecuteNonQuery() ;
//清場
myConn.Close() ;
}
catch(Exception e)
{
throw(new Exception("取貼子失敗:" e.ToString())) ;
}
return true;
}
///
/// 取的貼子列表
///
///
/// 返回一個Topic數組
///
public ArrayList GetTopicList()
{
//定義一個forum數組做為返回值
ArrayList arrForUMList =new ArrayList() ;
//從數據庫中讀取留言列表
myconn myConn = new myconn();
SQLCommand myCommand = new SQLCommand() ;
myCommand.ActiveConnection = myConn ;
myCommand.CommandText = "n_GetTopicList" ; //調用存儲過程
myCommand.CommandType = CommandType.StoredProcedure ;
try
{
myConn.Open() ;
SQLDataReader myReader ;
myCommand.Execute(out myReader) ;
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) ;
}
//清場
myReader.Close();
myConn.Close() ;
}
catch(SQLException e)
{
throw(new Exception("數據庫出錯:" e.ToString())) ;
//return null ;
}
return arrForUMList ;
}
http://www.mscto.com
}
}