📄 storedprocedures.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 SqlAdmin;
namespace SqlWebAdmin
{
/// <summary>
/// Summary description for StoredProcedures.
/// </summary>
public class StoredProcedures : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DropDownList SProcTypeDropDownList;
protected System.Web.UI.WebControls.Button FilterSProcsButton;
protected System.Web.UI.WebControls.Label SProcTypeErrorLabel;
protected System.Web.UI.WebControls.DataGrid SProcsDataGrid;
protected System.Web.UI.WebControls.HyperLink AddNewSProcHyperLink;
public StoredProcedures()
{
Page.Init += new System.EventHandler(Page_Init);
}
private void Page_Load(object sender, System.EventArgs e)
{
FilterSProcsButton_Click(null, null);
}
private void Page_Init(object sender, EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
}
#region Web Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
FilterSProcsButton.Click += new System.EventHandler(this.FilterSProcsButton_Click);
}
#endregion
private void FilterSProcsButton_Click(object sender, System.EventArgs e)
{
HttpCookie cookie = Request.Cookies["WebDataAdministrator"];
if (cookie == null)
Response.Redirect("default.aspx?error=sessionexpired");
SqlServer server = new SqlServer(cookie.Values["server"], cookie.Values["username"], cookie.Values["password"]);
string databaseName = Request["database"];
SqlObjectType objectTypeFilter;
switch (SProcTypeDropDownList.SelectedIndex)
{
case 0:
objectTypeFilter = SqlObjectType.User;
break;
case 1:
objectTypeFilter = SqlObjectType.User | SqlObjectType.System;
break;
default:
throw new Exception("Invalid SProcType selected");
}
// Get stored procedure list
server.Connect();
SqlDatabase database = server.Databases[Request["database"]];
if (database == null) {
server.Disconnect();
// Database doesn't exist - break out and go to error page
Response.Redirect(String.Format("error.aspx?error={0}", 1000));
return;
}
AddNewSProcHyperLink.NavigateUrl = String.Format("createstoredprocedure.aspx?database={0}", Server.UrlEncode(Request["database"]));
SqlStoredProcedureCollection sprocs = database.StoredProcedures;
server.Disconnect();
// Create DataSet from result
DataSet ds = new DataSet();
ds.Tables.Add();
ds.Tables[0].Columns.Add("name");
ds.Tables[0].Columns.Add("encodedname");
ds.Tables[0].Columns.Add("owner");
ds.Tables[0].Columns.Add("type");
ds.Tables[0].Columns.Add("createdate");
for (int i = 0; i < sprocs.Count; i++) {
SqlStoredProcedure sproc = sprocs[i];
// Only add objects that we want (system or user)
if ((sproc.StoredProcedureType & objectTypeFilter) > 0)
ds.Tables[0].Rows.Add(new object[] {Server.HtmlEncode(sproc.Name), Server.UrlEncode(sproc.Name), Server.HtmlEncode(sproc.Owner), Server.HtmlEncode(sproc.StoredProcedureType.ToString()), Server.HtmlEncode(sproc.CreateDate.ToString())});
}
// Show message if there are no tables, otherwise show datagrid
if (ds.Tables[0].Rows.Count == 0) {
SProcsDataGrid.Visible = false;
SProcTypeErrorLabel.Visible = true;
}
else {
SProcTypeErrorLabel.Visible = false;
SProcsDataGrid.Visible = true;
SProcsDataGrid.DataSource = ds;
SProcsDataGrid.DataBind();
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -