📄 articleedit.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Globalization;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Service;
namespace PKMS
{
/// <summary>
/// ArticleEdit 的摘要说明。
/// </summary>
public class ArticleEdit : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox TextBox_Topic;
protected System.Web.UI.WebControls.TextBox TextBox_KeyWords;
protected System.Web.UI.WebControls.TextBox TextBox_Source;
protected System.Web.UI.WebControls.Button Button_Save;
protected System.Web.UI.WebControls.Button Button_New;
protected System.Web.UI.WebControls.DropDownList DropDownList_Folder;
protected System.Web.UI.WebControls.Button Button_Parent;
protected System.Web.UI.WebControls.TextBox TextBox_FullPath;
protected System.Web.UI.HtmlControls.HtmlTextArea TEXTAREA_Content;
private string ArticleID
{
get
{
if(this.ViewState["ArticleID"] != null)
{
return this.ViewState["ArticleID"].ToString();
}
else
{
return null;
}
}
set
{
this.ViewState["ArticleID"] = value;
}
}
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!this.IsPostBack)
{
ArticleID = this.Request.QueryString["ArticleID"];
if(ArticleID != null)
{
DataAccessor da = new DataAccessor();
DataRow dr = da.ExecuteRecord("Select Topic, KeyWords, Source, Content, FolderID, UploadDate, UpdateDate, M.MenuName From ARTICLE, Menu M Where M.MenuCode=FolderID And ArticleID=" + ArticleID);
this.TextBox_Topic.Text = dr["Topic"].ToString();
this.TextBox_KeyWords.Text += dr["KeyWords"].ToString();
this.TextBox_Source.Text += dr["Source"].ToString();
this.TEXTAREA_Content.Value = dr["Content"].ToString();
da.Close();
this.ListChildren(dr["FolderID"].ToString(), dr["MenuName"].ToString());
}
else
{
string MenuCode = this.Request.QueryString["FolderID"];
DataAccessor da = new DataAccessor();
string MenuName = da.ExecuteScalar("Select MenuName From Menu Where MenuCode='" + MenuCode + "'").ToString();
da.Close();
this.ListChildren(MenuCode, MenuName);
this.TEXTAREA_Content.Value = "";
}
}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.DropDownList_Folder.SelectedIndexChanged += new System.EventHandler(this.DropDownList_Folder_SelectedIndexChanged);
this.Button_Parent.Click += new System.EventHandler(this.Button_Parent_Click);
this.Button_Save.Click += new System.EventHandler(this.Button_Save_Click);
this.Button_New.Click += new System.EventHandler(this.ButtonNew_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
/// <summary>
/// 新增
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void ButtonNew_Click(object sender, System.EventArgs e)
{
this.ArticleID = null;
this.TextBox_Topic.Text = "";
this.TextBox_KeyWords.Text = "";
this.TextBox_Source.Text = "";
this.TEXTAREA_Content.Value = "";
}
/// <summary>
/// 保存
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Button_Save_Click(object sender, System.EventArgs e)
{
//数据检查
if(CheckData() == false)
{
return;
}
DataAccessor da = new DataAccessor();
bool IsNew;
if(this.ArticleID == null) //New,执行Insert语句
{
IsNew = true;
ArticleID = (da.GetNewID("ARTICLE", "ArticleID")).ToString();
da.Sql = "Insert Into ARTICLE (ArticleID, Topic, KeyWords, Source, FolderID, Content, UploadDate) Values(?, ?, ?, ?, ?, ?, getdate())";
da.Cmd.Parameters.Add("@ArticleID", System.Data.OleDb.OleDbType.UnsignedInt);
da.Cmd.Parameters["@ArticleID"].Value = int.Parse(this.ArticleID);
da.Cmd.Parameters.Add("@Topic", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@Topic"].Value = this.TextBox_Topic.Text;
da.Cmd.Parameters.Add("@KeyWords", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@KeyWords"].Value = this.TextBox_KeyWords.Text;
da.Cmd.Parameters.Add("@Source", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@Source"].Value = this.TextBox_Source.Text;
da.Cmd.Parameters.Add("@FolderID", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@FolderID"].Value = this.DropDownList_Folder.SelectedValue;
da.Cmd.Parameters.Add("@Content", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@Content"].Value = this.TEXTAREA_Content.Value;
}
else //Modify,执行Update语句
{
IsNew = false;
da.Sql = "Update ARTICLE " +
"Set Topic=?, KeyWords=?, Source=?, FolderID=?, Content=?, UpdateDate=getdate() " +
"Where ArticleID=" + ArticleID;
da.Cmd.Parameters.Add("@Topic", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@Topic"].Value = this.TextBox_Topic.Text;
da.Cmd.Parameters.Add("@KeyWords", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@KeyWords"].Value = this.TextBox_KeyWords.Text;
da.Cmd.Parameters.Add("@Source", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@Source"].Value = this.TextBox_Source.Text;
da.Cmd.Parameters.Add("@FolderID", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@FolderID"].Value = this.DropDownList_Folder.SelectedValue;
da.Cmd.Parameters.Add("@Content", System.Data.OleDb.OleDbType.VarChar);
da.Cmd.Parameters["@Content"].Value = this.TEXTAREA_Content.Value;
}
if(da.ExecuteNonQuery() == -1)
{
this.ShowMessage("数据保存失败!");
if(IsNew)
{
this.ArticleID = null;
}
}
else
{
this.ShowMessage("数据保存成功!");
}
da.Close();
}
/// <summary>
/// 改变选项
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void DropDownList_Folder_SelectedIndexChanged(object sender, System.EventArgs e)
{
this.ListChildren(this.DropDownList_Folder.SelectedItem.Value, this.DropDownList_Folder.SelectedItem.Text);
this.Button_Parent.Enabled = true;
}
/// <summary>
/// 上一级
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Button_Parent_Click(object sender, System.EventArgs e)
{
DataAccessor da = new DataAccessor();
string sql = "Select P.MenuCode, P.MenuName From MENU P, MENU S Where S.ParentCode=P.MenuCode And S.MenuCode='" + this.DropDownList_Folder.SelectedValue + "'";
DataRow dr = da.ExecuteRecord(sql);
string ParentCode = dr["MenuCode"].ToString();
string ParentName = dr["MenuName"].ToString();
da.Close();
ListChildren(ParentCode, ParentName);
if(this.DropDownList_Folder.SelectedValue == "01")
{
this.Button_Parent.Enabled = false;
}
}
/// <summary>
/// 获取子类列表
/// </summary>
/// <param name="ParentCode"></param>
/// <param name="MenuName"></param>
private void ListChildren(string ParentCode, string MenuName)
{
DataAccessor da = new DataAccessor();
string sql = "Select MenuCode, MenuName From MENU Where Editable=1 And ParentCode=" + ParentCode + " Order by MenuCode";
da.Sql = sql;
OleDbDataReader dr = da.ExecuteReader();
DropDownList_Folder.DataSource = dr;
DropDownList_Folder.DataTextField = "MenuName";
DropDownList_Folder.DataValueField = "MenuCode";
DropDownList_Folder.DataBind();
da.Close();
System.Web.UI.WebControls.ListItem parent = new ListItem("----" + MenuName + "----", ParentCode);
DropDownList_Folder.Items.Insert(0,parent);
GetPath(0,ParentCode,true);
}
/// <summary>
/// 获取完整路径
/// </summary>
/// <param name="levelcounter"></param>
/// <param name="folderid"></param>
/// <param name="flag"></param>
private void GetPath(int levelcounter, string folderid, bool flag)
{
if(flag == true)
{
this.TextBox_FullPath.Text = "";
flag = false;
}
DataAccessor da = new DataAccessor();
string sql = "Select MenuCode, MenuName From MENU Where MenuCode='" + folderid + "'";
DataRow dr = da.ExecuteRecord(sql);
String MenuCode = dr["MenuCode"].ToString();
String MenuName = dr["MenuName"].ToString();
if(dr["MenuCode"].ToString() != "01" && levelcounter<10)
{
this.TextBox_FullPath.Text = dr["MenuName"].ToString() + " > " + this.TextBox_FullPath.Text;
string ParentCode = da.ExecuteScalar("Select ParentCode From MENU Where MenuCode='" + folderid + "'").ToString();
levelcounter++;
GetPath(levelcounter, ParentCode, flag);
}
da.Close();
}
/// <summary>
/// 数据检查
/// </summary>
/// <returns>检查结果</returns>
private bool CheckData()
{
/*
if(this.DropDownList_Folder.SelectedValue == "01")
{
this.ShowMessage("请选择文档所在的分类!");
return false;
}
*/
if(this.TextBox_Topic.Text.Trim() == "")
{
this.ShowMessage("请输入文档的标题!");
return false;
}
if(this.TEXTAREA_Content.Value.Trim() == "")
{
this.ShowMessage("请输入文档的内容!");
return false;
}
return true;
}
/// <summary>
/// 弹出提示信息
/// </summary>
/// <param name="msg">提示信息内容</param>
private void ShowMessage(string msg)
{
this.Response.Write("<script>alert('" + msg + "')</script>");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -