您的位置: 首页 > 软件教程 > C#教程专题 > 利用C#制作简单的留言板的方法

利用C#制作简单的留言板的方法

7.0分
出处:网络 时间:2011-06-22

您可能感兴趣的话题: C#  

核心提示:留言板分三个模块:列出留言列表、显示详细内容、发表留言

  留言板分三个模块:列出留言列表、显示详细内容、发表留言

  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

  {

  &nbs

  p; 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

  {

  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

  //

  //读取数据库

  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 ;

  }

  }

  }

  myconn.cs

  namespace notpage

  {

  using System;

  using System.Data.SQL ;

  ///

  /// Summary description for myconn.

  ///

  public class myconn:System.Data.SQL.SQLConnection

  {

  private void InitializeComponent ()

  {

  }

  public myconn()

  {

  //

  // TODO: Add Constructor Logic here

  //

  this.Database = "back" ;

  this.DataSource = "LUOCHANG" ;

  this.UserID = "sa" ;

  this.Pas

  sword = "" ;

  }

  }

  }

  添加留言addTopic.aspx

  <%@ Page language="c#" Codebehind="AddTopic.cs" AutoEventWireup="false" Inherits="notpage.AddTopic" %>

  <html><head>

  <meta content="Microsoft Visual Studio 7.0" name=GENERATOR>

  <meta content=C# name=CODE_LANGUAGE></head>

  <body>

  <form method=post runat="server">

  <table cellSpacing=1 cellPadding=1 width="88%" border=0>

  <tr>

  <td>留言主题:</TD>

  <td><asp:textbox id=txtTitle runat="server" maxlength="80" columns="65"></asp:textbox></TD></TR>

  <tr>

  <td>姓名:</TD>

  <td><asp:textbox id=txtAuthor runat="server" maxlength="40" columns="20"></asp:textbox></TD></TR>

  <tr>

  <td>留言内容</TD>

  <td><asp:textbox id=txtContent runat="server" maxlength="2000" columns="50" rows="20" TextMode="MultiLine"></asp:textbox><asp:button

  id=btnSubmit runat="Server"

  text="确认"></asp:button></TD></TR></TABLE></FORM>

  </body></html></P><P>对应的cs

  namespace notpage

  {

  using System;
using System.Collections;

  using System.ComponentModel;

  using System.Data;

  using System.Drawing;

  using System.Web;

  using System.Web.SessionState;

  using System.Web.UI;

  using System.Web.UI.WebControls;

  using System.Web.UI.HtmlControls;

  ///

  /// Summary description for AddTopic.

  ///

  public class AddTopic : System.Web.UI.Page

  {

  protected System.Web.UI.WebControls.TextBox txtContent;

  protected System.Web.UI.WebControls.TextBox txtAuthor;

  protected System.Web.UI.WebControls.TextBox txtTitle;

  protected System.Web.UI.WebControls.Button btnSubmit;

  public AddTopic()

  {

  Page.Init += new System.EventHandler(Page_Init);

  }

  protected void Page_Load(object sender, EventArgs e)

  {

  if (!IsPostBack)

  {

  //

  // Evals true first time browser hits the page

  //

  }

  }

  protected void Page_Init(object sender, EventArgs e)

  {

  //

  // CODEGEN: This call is required by the ASP+ Windows Form Designer.

  //

  InitializeComponent();

  }

  ///

  /// Required method for Designer support - do not modify

  /// the contents of this method with the code editor.
///

  private void InitializeComponent()

  {

  btnSubmit.Click += new System.EventHandler (this.OnSubmit);

  this.Load += new System.EventHandler (this.Page_Load);

  }

  public void OnSubmit(Object sender , EventArgs e)

  {

  if (Page.IsValid)

  {

  //数据入库

  try

  {

  notepage objNp = new notepage();

  objNp.Title = txtTitle.Text;

  objNp.Author = txtAuthor.Text;

  objNp.Content = txtContent.Text;

  objNp.adddate = System.DateTime.Now;

  notepage objNp1 = new notepage();

  if(objNp1.AddTopic(objNp))

  {

  Response.Write ("

  成功留言,点击此处查看留言列表!。

  ") ;

  }

  }

  catch(Exception exp)

  {

  #if DEBUG

  Response.Write ("出现异常:" + exp.Message) ;

  return ;

  #endif//DEBUG

  }

  }

  }

  }

  }

  显示列表list.aspx

  <%@ Page language="c#" Codebehind="list.cs" AutoEventWireup="false" Inherits="notpage.list" %>

  <html><head>

  <meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">

  <meta name="CODE_LANGUAGE" Content="C#"></head>
&nbs

  p; <body>

  <form method="post" runat="server"></P><P> </form><a href = "addTopic.aspx">发表留言</a><br>

  <TABLE WIDTH="90%" HEIGHT="1" BORDER="0" CELLSPACING="2" CELLPADDING="2" id=liuyan>

  <TR>

  <TD>主题</TD>

  <TD>留言人</TD>

  <TD>留言时间</TD>

  </TR>

  <asp:label id="n_tdtitle" runat=Server></asp:label>

  </TABLE></P><P> </body></html>

  namespace notpage

  {

  using System;

  using System.Collections;

  using System.ComponentModel;

  using System.Data;

  using System.Drawing;

  using System.Web;

  using System.Web.SessionState;

  using System.Web.UI;

  using System.Web.UI.WebControls;

  using System.Web.UI.HtmlControls;

  ///

  /// Summary description for list.

  ///

  public class list : System.Web.UI.Page

  {

  protected System.Web.UI.WebControls.Label n_tdtitle;

  public list()

  {

  Page.Init += new System.EventHandler(Page_Init);

  }

网友评论
精品软件课程
更多 >
C++是一种静态数据类型检查的,支持多重编程... [详细]
Java,是由Sun Microsystem... [详细]
C语言是一种面向过程的计算机程序设计语言。多... [详细]
Visual Basic是一种由微软公司开发... [详细]
Oracle Database,又名Orac... [详细]
Visual Basic.NET是从 Vis... [详细]