超简易留言薄 附数据库连接类,分页类。跟大家交流一下
http://down.dolod.net/qq27375.rar欢迎大虾批评指正
留言薄首页代码
using System;
using System.Web;
using System.Data;
using System.Web.UI;
using System.Web.UI.WebControls;
using Kaixin;
public partial class Default_aspx : Kaixin.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ShowList();
}
public void ShowList()
{
int NowPage = MyMath.RequestPage(Request.QueryString["page"]);
DataTable dt = Www.DataVisit.Test.SearchData.AllData();
Kaixin.DataShow.ForRpt dataShow = new Kaixin.DataShow.ForRpt();
dataShow.DataSource = dt;
dataShow.PageSize = 10;
dataShow.NowPage = NowPage;
//dataShow.AddPageConfig("BoardId", board.BoardId.ToString());
dataShow.JsNextPage = true;
dataShow.SelectPage();
rptList.DataSource = dataShow.PageDataSource;
rptList.DataBind();
spnPage.InnerHtml = dataShow.OutPageLink().ToString();
}
}
删除留言
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Kaixin;
public partial class Delete_aspx : Kaixin.Page
{
protected void Page_Load(object sender, EventArgs e)
{
int Id = MyMath.RequestInt(Request.QueryString["Id"]);
if (Id == 0) {
alert("错误的ID!","Default.aspx");
}
Www.DataVisit.Test test = new Www.DataVisit.Test();
test.Delete(Id);
alert("删除成功!", "Default.aspx");
}
}
发表及编辑留言
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using Kaixin;
using Www.DataVisit;
public partial class Post_aspx : Kaixin.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
LoadData();
}
}
public void LoadData()
{
int Id = MyMath.RequestInt(Request.QueryString["Id"]);
if (Id > 0)
{
Test test = new Test();
test.GetData(Id);
if (test.Id == 0)
{
alert("不存在或已被删除的留言!", "Default.aspx");
}
txtTitle.Text = test.Title;
txtContent.Text = test.Content;
txtId.Text = test.Id.ToString();
}
}
public void SaveTo(object sender, EventArgs e)
{
Test test = new Test();
test.Id = MyMath.RequestInt(txtId.Text);
test.UserId = 0;
test.UserName = "游客";
test.Title = txtTitle.Text;
test.Content = txtContent.Text;
test.Addtime = DateTime.Now;
test.UserIp = Request.UserHostAddress;
if (test.Id == 0) {
test.Insert();
}
else
{
test.Update();
}
alert("保存成功!", "Default.aspx");
}
}
--------------------编程问答-------------------- 数据库交互
--------------------编程问答-------------------- 数据查询错误自动记录类:使用本数据库连接类,当数据库连接出错,或者执行出错的时候,会在指定目录下面自动生成一个错误日志文件,包括时间、数据库连接,以及出错的SQL语句
using System;
using System.Web;
using System.Data;
using Kaixin;
namespace Www.DataVisit {
#region Test
/// <summary>
/// 这里是Test类的说明
/// </summary>
public class Test
{
#region 私有变量
private DateTime _addtime;
private string _content;
private int _id;
private string _title;
private int _userid;
private string _userip;
private string _username;
#endregion
#region 字段定义
/// <summary>
/// 添加时间
/// </summary>
public DateTime Addtime
{
get { return _addtime; }
set { _addtime = value; }
}
/// <summary>
/// 内容
/// </summary>
public string Content
{
get { return _content; }
set { _content = MyMath.DataString(value, 50); }
}
/// <summary>
/// 自动编号
/// </summary>
public int Id
{
get { return _id; }
set { _id = value; }
}
/// <summary>
/// 标题
/// </summary>
public string Title
{
get { return _title; }
set { _title = MyMath.DataString(value, 50); }
}
/// <summary>
/// 用户名
/// </summary>
public int UserId
{
get { return _userid; }
set { _userid = value; }
}
/// <summary>
/// IP
/// </summary>
public string UserIp
{
get { return _userip; }
set { _userip = MyMath.DataString(value, 30); }
}
/// <summary>
/// 用户名
/// </summary>
public string UserName
{
get { return _username; }
set { _username = MyMath.DataString(value, 20); }
}
#endregion
#region 数据操作
/// <summary>
/// 安全:过滤单引号
/// </summary>
private void Filter()
{
Content = Data.Filter(Content);
Title = Data.Filter(Title);
UserIp = Data.Filter(UserIp);
UserName = Data.Filter(UserName);
}
/// <summary>
/// 数据操作:添加记录
/// </summary>
public void Insert()
{
Filter();
SqlBuilder.InsertBuilder insertBuilder = new SqlBuilder.InsertBuilder("Test");
insertBuilder.Append("Addtime", Addtime);
insertBuilder.Append("Content", Content);
insertBuilder.Append("Title", Title);
insertBuilder.Append("UserId", UserId);
insertBuilder.Append("UserIp", UserIp);
insertBuilder.Append("UserName", UserName);
Data.SqlDataVisit dataVisit = new Data.SqlDataVisit("Kewai");
dataVisit.Sql = insertBuilder.ToString();
dataVisit.Execute();
}
/// <summary>
/// 数据操作:更新记录
/// </summary>
public void Update()
{
Filter();
SqlBuilder.UpdateBuilder updateBuilder = new SqlBuilder.UpdateBuilder("Test");
updateBuilder.AppendSet("Addtime", Addtime);
updateBuilder.AppendSet("Content", Content);
updateBuilder.AppendSet("Title", Title);
updateBuilder.AppendSet("UserId", UserId);
updateBuilder.AppendSet("UserIp", UserIp);
updateBuilder.AppendSet("UserName", UserName);
updateBuilder.AppendWhere("Id", Id);
Data.SqlDataVisit dataVisit = new Data.SqlDataVisit("Kewai");
dataVisit.Sql = updateBuilder.ToString();
dataVisit.Execute();
}
/// <summary>
/// 数据操作:删除记录
/// </summary>
public void Delete()
{
Delete(Id);
}
/// <summary>
/// 数据操作:删除记录
/// </summary>
/// <param name="Id"></param>
public void Delete(int Id)
{
Data.SqlDataVisit dataVisit = new Data.SqlDataVisit("Kewai");
dataVisit.Sql = "Delete From [Test] Where Id=" + Id.ToString();
dataVisit.Execute();
}
#endregion
#region 数据读取
#region GetData
/// <summary>
/// 数据操作:读取单条记录
/// </summary>
public void GetData()
{
GetData(Id);
}
/// <summary>
/// 数据操作:读取单条记录
/// </summary>
/// <param name="id">数据自动编号</param>
public void GetData(int id)
{
Data.SqlDataVisit dataVisit = new Data.SqlDataVisit("Kewai");
dataVisit.Sql = "Select * From [Test] Where Id=" + id.ToString();
DataTable dataTable = dataVisit.GetDataTable();
if (dataVisit.IsHaveErrorPrivate)
{
this.Id = 0;
return;
}
else if (dataTable.Rows.Count == 0)
{
this.Id = 0;
return;
}
else
{
this.Id = id;
DataRow dataRow = dataTable.Rows[0];
Addtime = Convert.ToDateTime(dataRow["Addtime"]);
Content = dataRow["Content"].ToString();
Title = dataRow["Title"].ToString();
UserId = Convert.ToInt32(dataRow["UserId"]);
UserIp = dataRow["UserIp"].ToString();
UserName = dataRow["UserName"].ToString();
}
}
#endregion
#endregion
#region 数据读取 public class SearchData
/// <summary>
/// 数据操作:读取单条记录
/// </summary>
public class SearchData
{
/// <summary>
/// 读取所有记录
/// </summary>
/// <returns></returns>
public static DataTable AllData()
{
Data.SqlDataVisit Conn = new Data.SqlDataVisit("Kewai");
Conn.Sql = "Select * From [Test] Order By Id Desc";
return Conn.GetDataTable();
}
}
#endregion
}
#endregion
}
using System;
using System.Text;
namespace Kaixin
{
/// <summary>
/// 错误日志
/// QQ:27375 开心就好
/// </summary>
public sealed class ErrorLog
{
#region 错误日志 public ErrorLog(string ErrorLogFolder, string ErrorText)
/// <summary>
/// 错误日志 ErrorLog(string 日志目录, string 日志内容)
/// </summary>
public ErrorLog(string ErrorLogFolder, string ErrorText)
{
string _ErrorLogPath = new System.Web.UI.Page().Server.MapPath(ErrorLogFolder);
if (!System.IO.Directory.Exists(_ErrorLogPath))
{
try
{
System.IO.Directory.CreateDirectory(_ErrorLogPath);
}
catch (Exception)
{
}
}
System.IO.StreamWriter myWrite;
string strFilePath = _ErrorLogPath + NewLogFileName();
try
{
myWrite = new System.IO.StreamWriter(strFilePath, false, System.Text.Encoding.Default);
myWrite.Write(ErrorText.ToString());
myWrite.WriteLine("<br><br>");
myWrite.WriteLine("<b>[错误时间]</b>");
myWrite.WriteLine(DateTime.Now.ToString());
myWrite.Close();
}
catch (Exception)
{
}
finally
{
}
}
#endregion
#region 返回随机生成的错误日志文件名称 private string NewLogFileName()
/// <summary>
/// 返回随机生成的错误日志文件名称
/// </summary>
/// <returns></returns>
private string NewLogFileName()
{
DateTime dtNow = DateTime.Now;
StringBuilder sbrFileName = new StringBuilder();
//日期和时间部分
sbrFileName.Append(dtNow.Year);
sbrFileName.Append("-");
sbrFileName.Append(dtNow.Month);
sbrFileName.Append("-");
sbrFileName.Append(dtNow.Day);
sbrFileName.Append("_");
sbrFileName.Append(dtNow.Hour);
sbrFileName.Append("-");
sbrFileName.Append(dtNow.Minute);
sbrFileName.Append("-");
sbrFileName.Append(dtNow.Second);
//随机数部分
sbrFileName.Append("_");
Random r = new Random();
sbrFileName.Append(System.Convert.ToInt32(r.NextDouble() * 1000));
sbrFileName.Append(".htm");
return sbrFileName.ToString();
}
#endregion
}
}
补充:.NET技术 , ASP.NET