📄 admin_article.aspx.cs
字号:
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;
using System.Data.SqlClient;
using System.Configuration;
namespace WebNews.admin
{
/// <summary>
/// admin_article 的摘要说明。
/// </summary>
public class admin_article : System.Web.UI.Page
{
protected System.Data.SqlClient.SqlConnection SqlConnection1; //添加数据库的操作对象
protected System.Data.SqlClient.SqlDataAdapter SqlDataAdapter1;
protected System.Data.DataSet DataSet1;
protected System.Data.SqlClient.SqlCommand SqlCommand1;
protected System.Data.SqlClient.SqlDataReader SqlDataReader1;
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.WebControls.Label myLabel;
protected System.Web.UI.WebControls.TextBox keyword;
protected System.Web.UI.WebControls.DropDownList search;
protected System.Web.UI.WebControls.LinkButton LinkButton1;
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;
protected System.Web.UI.WebControls.LinkButton btnFirst;
protected System.Web.UI.WebControls.LinkButton LinkButton2;
protected System.Web.UI.WebControls.LinkButton Linkbutton3;
protected System.Web.UI.WebControls.LinkButton Linkbutton4;
protected System.Web.UI.WebControls.Label lblCurrentIndex;
protected System.Web.UI.WebControls.Label lblPageCount;
protected System.Web.UI.WebControls.DropDownList DropDownList1;
protected System.Web.UI.WebControls.Button Button2;
protected System.Web.UI.WebControls.DropDownList DropDownList2;
protected System.Web.UI.WebControls.Button Button3;
protected System.Web.UI.WebControls.DataGrid MyDataGrid;
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
getClass();
getArticle();
for(int i=1;i<=MyDataGrid.PageCount;i++)
{
DropDownList2.Items.Add("第"+i+"页");
}
}
}
private void getClass() //根据权限设置分类和ClassName控件的下拉列表
{
string da=(string)Session["userclass"] ;
string classname=(string)Session["classname"];
if(da.Trim()=="系统管理员")
{
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);//连接字符串,建立连接
SqlDataAdapter1 = new SqlDataAdapter();
SqlDataAdapter1.SelectCommand=new SqlCommand("sp_selFclassAll",SqlConnection1);
SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;
DataSet1=new DataSet();
try
{
SqlDataAdapter1.Fill(DataSet1,"ClassName");
}
catch (SqlException e1)
{
myLabel.Text ="数据库操作错误:"+e1.Message;
}
DropDownList1.DataSource=DataSet1.Tables["ClassName"].DefaultView;
DropDownList1.DataTextField="className";
DropDownList1.DataValueField="className";
DropDownList1.DataBind();
SqlConnection1.Close();
DropDownList1.Items.Add("全部");
DropDownList1.Items.FindByText("全部").Selected=true;
}
else //不是系统管理员,只能管理一个新闻分类
{
ListItem d=new ListItem(classname,classname);
DropDownList1.Items.Add(d);
}
}
private void getArticle() //取得Article数据
{
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);//取连接字符串,建立连接
SqlDataAdapter1 = new SqlDataAdapter();
string g=(string)Session["userclass"];
string h=(string)Session["classname"];
if(g.Trim()=="系统管理员"&&h.Trim()=="12")
{
SqlDataAdapter1.SelectCommand=new SqlCommand("SELECT * FROM db_Article ORDER BY dateandtime DESC ",SqlConnection1);
}
else
{
SqlDataAdapter1.SelectCommand=new SqlCommand("SELECT * FROM db_Article WHERE (classname = @classname) ORDER BY dateandtime DESC",SqlConnection1);
SqlDataAdapter1.SelectCommand.Parameters.Add("@classname",SqlDbType.Char,40);
SqlDataAdapter1.SelectCommand.Parameters["@classname"].Value=(string)Session["classname"];
}
DataSet1=new DataSet();
try
{
SqlDataAdapter1.Fill(DataSet1,"Article");
}
catch (SqlException e1)
{
myLabel.Text ="数据库操作错误:"+e1.Message;
}
MyDataGrid.DataSource=DataSet1;
MyDataGrid.DataBind();
lblCurrentIndex.Text="第"+((Int32)MyDataGrid.CurrentPageIndex+1)+"页";
lblPageCount.Text="/共"+MyDataGrid.PageCount+"页";
string da=(string)Session["userclass"] ;
if(da.Trim()=="系统管理员")
{
Session["classname"]="12";
}
}
public void PagerButtonClick(Object sender, EventArgs e)
{
//获得LinkButton的参数值
string arg = ((LinkButton)sender).CommandArgument;
switch(arg)
{
case ("next"):
{
if (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1))
MyDataGrid.CurrentPageIndex ++;
break;
}
case ("prev"):
{
if (MyDataGrid.CurrentPageIndex > 0)
MyDataGrid.CurrentPageIndex --;
break;
}
case ("last"):
{
MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1);
break;
}
case("first"):
{
MyDataGrid.CurrentPageIndex =0;
break;
}
}
if(DropDownList1.SelectedItem.Text.Trim()=="全部")
{
getArticle();
}
else
{
Session["classname"]=DropDownList1.SelectedItem.Text.Trim();
getArticle();
}
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button2.Click += new System.EventHandler(this.Button2_Click);
this.MyDataGrid.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.MyDataGrid_PageIndexChanged);
this.MyDataGrid.DeleteCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.MyDataGrid_DeleteCommand);
this.MyDataGrid.SelectedIndexChanged += new System.EventHandler(this.MyDataGrid_SelectedIndexChanged);
this.DropDownList2.SelectedIndexChanged += new System.EventHandler(this.DropDownList2_SelectedIndexChanged);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
public void MyDataGrid_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) //删除新闻
{
string c=(string)Session["userclass"];
if(c.Trim()=="系统管理员"||(int)Session["chgnews"]==1)
{ //删除分类发表文章数
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]); //取连接字符串,并建立连接
SqlCommand1=new SqlCommand("sp_delClassNum",SqlConnection1);
SqlCommand1.CommandType=CommandType.StoredProcedure;
SqlCommand1.Parameters.Add("@className",SqlDbType.Char);
SqlCommand1.Parameters["@className"].Value = e.Item.Cells[2].Text.Trim(); //Session["classname"].ToString().Trim();
try
{
SqlConnection1.Open();
SqlCommand1.ExecuteNonQuery();
}
catch (SqlException e1)
{
myLabel.Text ="数据库操作错误:"+e1.Message;
}
SqlConnection1.Close();
//删除文章
SqlCommand1=new SqlCommand("sp_delArticle",SqlConnection1);
SqlCommand1.CommandType=CommandType.StoredProcedure;
SqlCommand1.Parameters.Add(new SqlParameter("@articleid",SqlDbType.BigInt));
SqlCommand1.Parameters["@articleid"].Value = MyDataGrid.DataKeys[e.Item.ItemIndex];
try
{
SqlConnection1.Open();
int r=SqlCommand1.ExecuteNonQuery();
if(r>0)
{
myLabel.Text="删除成功!";
}
else
{
myLabel.Text="删除错误!";
}
getArticle();
}
catch (SqlException e1)
{
myLabel.Text ="数据库操作错误:"+e1.Message;
}
SqlConnection1.Close();
//删除管理员发表文章数
SqlCommand1=new SqlCommand("sp_delNum",SqlConnection1);
SqlCommand1.CommandType=CommandType.StoredProcedure;
SqlCommand1.Parameters.Add(new SqlParameter("@username",SqlDbType.Char,200));
SqlCommand1.Parameters["@username"].Value = e.Item.Cells[4].Text.Trim(); //文章的发表者
try
{
SqlConnection1.Open();
SqlCommand1.ExecuteNonQuery();
}
catch (SqlException e1)
{
myLabel.Text ="数据库操作错误:"+e1.Message;
}
SqlConnection1.Close();
}
else
{
myLabel.Text="你无权删除此新闻";
}
}
private void LinkButton1_Click(object sender, System.EventArgs e) //搜索数据库
{
if(Page.IsValid)
{
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);//取连接字符串,建连接
SqlDataAdapter1 = new SqlDataAdapter();
if(search.SelectedIndex==0)
{
SqlDataAdapter1.SelectCommand=new SqlCommand("sp_searchCkArticleByTitle",SqlConnection1);
SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;
SqlDataAdapter1.SelectCommand.Parameters.Add("@title",SqlDbType.NVarChar ,500);
SqlDataAdapter1.SelectCommand.Parameters["@title"].Value=keyword.Text.Trim() ;
}
else
{
SqlDataAdapter1.SelectCommand=new SqlCommand("sp_searchCkArticleByContent",SqlConnection1);
SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;
SqlDataAdapter1.SelectCommand.Parameters.Add("@content",SqlDbType.NText);
SqlDataAdapter1.SelectCommand.Parameters["@content"].Value=keyword.Text.Trim();
}
DataSet1=new DataSet();
try
{
SqlDataAdapter1.Fill(DataSet1,"Article");
}
catch (SqlException e1)
{
myLabel.Text ="数据库操作错误:"+e1.Message;
}
MyDataGrid.DataSource=DataSet1;
MyDataGrid.DataBind();
}
}
private void MyDataGrid_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
MyDataGrid.CurrentPageIndex = e.NewPageIndex;
getArticle();
}
private void MyDataGrid_SelectedIndexChanged(object sender, System.EventArgs e)
{
}
private void Button2_Click(object sender, System.EventArgs e)
{
Session["classname"]=DropDownList1.SelectedItem.Text.Trim();
getArticle();
}
private void DropDownList2_SelectedIndexChanged(object sender, System.EventArgs e)
{
MyDataGrid.CurrentPageIndex = DropDownList2.SelectedIndex;
if(DropDownList1.SelectedItem.Text.Trim()=="全部")
{
getArticle();
}
else
{
Session["classname"]=DropDownList1.SelectedItem.Text.Trim();
getArticle();
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -