📄 admin_user.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_user 的摘要说明。
/// </summary>
public class admin_user : System.Web.UI.Page
{
string con=ConfigurationSettings.AppSettings["dsn"]; //取得DSN字符
public DataSet ds=new DataSet();
DataRow dr;
public string userclass;
public string oldusername;
protected System.Web.UI.WebControls.DataGrid MyDataGrid;
protected System.Web.UI.WebControls.TextBox UserName;
protected System.Web.UI.WebControls.Label myLabel;
protected System.Web.UI.WebControls.TextBox PassWord;
protected System.Web.UI.WebControls.DropDownList UserClass;
protected System.Web.UI.WebControls.TextBox Remark;
protected System.Web.UI.WebControls.Label lblCurrentIndex;
protected System.Web.UI.WebControls.LinkButton btnFirst;
protected System.Web.UI.WebControls.LinkButton LinkButton2;
protected System.Web.UI.WebControls.LinkButton LinkButton1;
protected System.Web.UI.WebControls.LinkButton LinkButton3;
protected System.Web.UI.WebControls.Label lblPageCount;
private void Page_Load(object sender, System.EventArgs e)
{
if(! Page.IsPostBack)
{
string userclass;
userclass=(string)Session["userclass"];
if(userclass.Trim()=="系统管理员")
{
getAdmin();
}
else Page.Visible=false;
}
// 在此处放置用户代码以初始化页面
}
private void getAdmin() //填充DataGrid
{
try
{
//连接字符串
SqlConnection conn = new SqlConnection(con);//连接字符串
conn.Open();
SqlDataAdapter myCommand = new SqlDataAdapter(); //创建SqlDataAdapter 类
myCommand.SelectCommand=new SqlCommand("sp_selAdminAll",conn);
myCommand.SelectCommand.CommandType=CommandType.StoredProcedure ;
// DataSet ds=new DataSet();
//建立并填充数据集
myCommand.Fill(ds,"Admin");
MyDataGrid.DataSource=ds; //绑定DataList
MyDataGrid.DataBind();
lblCurrentIndex.Text="第"+((Int32)MyDataGrid.CurrentPageIndex+1)+"页";
lblPageCount.Text="/共"+MyDataGrid.PageCount+"页";
conn.Close();
}
catch(SqlException e)
{
Response.Write("Exception in Main: " + e.Message); //出错处理
}
}
public string show(object a,object b)
{ string d=a.ToString();
string c=a+"(<a href=admin_popedom.aspx?username="+b+">修改权限</a></font>)";
if(d.Trim()=="系统管理员")
{
return d;
}
else
{
return c;
}
}
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;
}
getAdmin();
}
#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.Load += new System.EventHandler(this.Page_Load);
}
#endregion
public void MyDataGrid_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
this.MyDataGrid.EditItemIndex = e.Item.ItemIndex;
getAdmin();
dr=ds.Tables["Admin"].Rows[MyDataGrid.EditItemIndex] ; //取得popedom字段
userclass=(string)dr["userclass"];
userclass=userclass.Trim();
oldusername=(string)dr["username"];
oldusername=oldusername.Trim();
Session["oldusername"]=oldusername;
}
public void MyDataGrid_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
this.MyDataGrid.EditItemIndex = -1;
getAdmin();
}
public void MyDataGrid_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(Page.IsValid)
{
try
{
SqlConnection myConnection = new SqlConnection(con);//连接字符串
myConnection.Open();
TextBox Username=(TextBox)e.Item.Cells[1].Controls[1]; //取得DataGrid中的控件值
TextBox Password=(TextBox)e.Item.Cells[2].Controls[1];
DropDownList Userclass=(DropDownList)e.Item.Cells[3].Controls[1];
TextBox Remark=(TextBox)e.Item.Cells[4].Controls[1];
string dr=Username.Text;
dr=dr.Trim();
string de=(string)Session["oldusername"];
de=de.Trim();
if(de==dr)
{
SqlCommand updateAdmin=new SqlCommand("sp_updateAdmin",myConnection); //通过存储过程更新
updateAdmin.CommandType=CommandType.StoredProcedure;
SqlParameter id=updateAdmin.Parameters.Add("@id",SqlDbType.BigInt ); //参数设定
SqlParameter username=updateAdmin.Parameters.Add("@username",SqlDbType.Char,40);
SqlParameter password=updateAdmin.Parameters.Add("@password",SqlDbType.Char,40);
SqlParameter userclass=updateAdmin.Parameters.Add("@userclass",SqlDbType.Char,40);
SqlParameter remark=updateAdmin.Parameters.Add("@remark",SqlDbType.Char,200);
id.Value=this.MyDataGrid.DataKeys[(int)e.Item.ItemIndex] ; //获得参数的值
username.Value=Username.Text.Trim() ;
password.Value=Password.Text.Trim() ;
userclass.Value=Userclass.SelectedItem.Text.Trim();
remark.Value=Remark.Text.Trim() ;
int rt=updateAdmin.ExecuteNonQuery(); //更新
if(rt>0)
{
myLabel.Text="更新成功!";
MyDataGrid.EditItemIndex = -1; //回到编辑状态
myConnection.Close();
getAdmin();
}
else
{
myLabel.Text="更新错误!";
myConnection.Close();
}
}
else
{
SqlCommand validateAdmin=new SqlCommand("sp_addAdminValidate",myConnection);
validateAdmin.CommandType=CommandType.StoredProcedure;
SqlParameter vlaidateUsername=validateAdmin.Parameters.Add("@username",SqlDbType.Char,40);
vlaidateUsername.Value=Username.Text;
SqlDataReader validateReader=validateAdmin.ExecuteReader();
if(validateReader.Read()==true)
{
myLabel.Text="已有此用户名,请重新输入一个!!";
validateReader.Close();
myConnection.Close();
}
else
{
validateReader.Close();
SqlCommand updateAdmin=new SqlCommand("sp_updateAdmin",myConnection); //通过存储过程更新
updateAdmin.CommandType=CommandType.StoredProcedure;
SqlParameter id=updateAdmin.Parameters.Add("@id",SqlDbType.BigInt ); //参数设定
SqlParameter username=updateAdmin.Parameters.Add("@username",SqlDbType.Char,40);
SqlParameter password=updateAdmin.Parameters.Add("@password",SqlDbType.Char,40);
SqlParameter userclass=updateAdmin.Parameters.Add("@userclass",SqlDbType.Char,40);
SqlParameter remark=updateAdmin.Parameters.Add("@remark",SqlDbType.Char,200);
id.Value=this.MyDataGrid.DataKeys[(int)e.Item.ItemIndex] ; //获得参数的值
username.Value=Username.Text ;
password.Value=Password.Text ;
userclass.Value=Userclass.SelectedItem.Text;
remark.Value=Remark.Text ;
int rt=updateAdmin.ExecuteNonQuery(); //更新
if(rt>0)
{
myLabel.Text="更新成功!";
MyDataGrid.EditItemIndex = -1; //回到编辑状态
myConnection.Close();
getAdmin();
}
else
{
myLabel.Text="更新错误!";
myConnection.Close();
}
}
}
}
catch(SqlException er) //出错处理
{
Response.Write("SqlException in Main: " + er.Message);
}
}
}
public void MyDataGrid_SelectedIndexChanged(object sender,System.EventArgs e)
{
getAdmin();
}
public void MyDataGrid_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
try
{
SqlConnection conn=new SqlConnection(con); //建立连接
conn.Open();
SqlCommand delAdmin=new SqlCommand("sp_delAdmin",conn); //建立命令
delAdmin.CommandType=CommandType.StoredProcedure;
SqlParameter id=delAdmin.Parameters.Add("@id",SqlDbType.BigInt);
id.Value=this.MyDataGrid.DataKeys[e.Item.ItemIndex] ; //获得参数的值
int r=delAdmin.ExecuteNonQuery(); //删除
if(r>0)
{
myLabel.Text="删除成功!";
conn.Close();
MyDataGrid.EditItemIndex = -1;
if(MyDataGrid.CurrentPageIndex>0)
{
MyDataGrid.CurrentPageIndex= MyDataGrid.CurrentPageIndex-1;
}
getAdmin();
}
else
{
myLabel.Text="删除错误!";
conn.Close();
MyDataGrid.EditItemIndex = -1;
getAdmin();
}
}
catch(SqlException er)
{
Response.Write("SqlException in Main: " + er.Message);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -