后台cs.codeusing System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Data.OleDb;
using System.Xml;
using System.IO;
using System.Collections.Generic;
using System.Drawing;namespace Product_System
{
public partial class _Default : System.Web.UI.Page
{
DataSet myds = null;
//数据库连接
string strconn = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DropDownList1.DataValueField = "XID";
DropDownList1.DataTextField = "XName";
DropDownList1.DataSource = SelectVal();
DropDownList1.DataBind();
GridViewBind();
}
} /// <summary>
/// 绑定GridView
/// </summary>
public void BindGridView()
{
SqlConnection sqlcon = new SqlConnection(strconn);
sqlcon.Open();
string str = "select * from Product";
SqlDataAdapter sqlDA = new SqlDataAdapter(str,sqlcon);
myds = new DataSet();
sqlDA.Fill(myds,"Product");
GridView1.DataSource = myds.Tables["Product"];
GridView1.DataBind();
sqlcon.Close();
} /// <summary>
/// 动态GridView绑定
/// </summary>
public void GridViewBind()
{
DataTable dt = new DataTable();
dt = selectProduct(txtName.Text, DropDownList1.SelectedValue);
int number = myds.Tables[0].Columns.Count;
if (dt.Rows.Count > 0)
{
txtName.Text = "";
for (int i = 0; i < number; i++)
{
if (jiexiName(i.ToString(), "DB_CNANME", "disp", "on") != "")
{
BoundField field = new BoundField();
field.DataField = jiexiName(i.ToString(), "DB_CNANME", "disp", "on");
field.HeaderText = jiexiName(i.ToString(), "grid_name", "disp", "on");
GridView1.Columns.Add(field);
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
}
} /// <summary>
/// 删除数据
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public int DeleteProduct(int id)
{
string sql = "Delete from Product where ID='" + id + "'";
int result = ExecuteNonQuery(sql);
return result;
} /// <summary>
/// 查询数据
/// </summary>
/// <param name="TextVal">文本框值</param>
/// <param name="DropVal">下拉值</param>
/// <returns></returns>
private DataTable selectProduct(string TextVal, string DropVal)
{
string sql = "select " + SelectJieXiName() + " from Product where"; if (TextVal.Length > 0)
{
sql += " " + DropVal + " like '%" + TextVal + "%'";
}
else
{
sql = "select * from Product";
}
return ExecuteQuery(sql);
} /// <summary>
/// 对数据库执行 SQL 查询
/// </summary>
/// <param name="strSqlPro"></param>
/// <returns></returns>
public DataTable ExecuteQuery(string strSqlPro)
{
SqlDataAdapter DA = new SqlDataAdapter(strSqlPro, strconn);
DataSet ds = new DataSet();
DA.Fill(ds);
return ds.Tables[0];
} /// <summary>
/// 执行SQL语句,返回受影响的行数
/// </summary>
/// <param name="strSQL"></param>
/// <returns></returns>
public int ExecuteNonQuery(string strSQL)
{
int result = 0;
SqlConnection sqlCon = new SqlConnection(strconn);
sqlCon.Open();
SqlCommand sqlComm = new SqlCommand(strSQL, sqlCon);
result = sqlComm.ExecuteNonQuery();
sqlCon.Close();
return result;
} /// <summary>
/// 查询按钮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button1_Click1(object sender, EventArgs e)
{
GridViewBind();
} /// <summary>
/// 删除事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void GridView1_RowDeleting(object sender,GridViewDeleteEventArgs e)
{
int rowid = int.Parse(GridView1.DataKeys[e.RowIndex][0].ToString());
int result = DeleteProduct(rowid);
if (result > 0)
{
GridViewBind();
Response.Write("<script>alert('删除成功!')</script>");
}
else
{
Response.Write("<script>alert('删除失败!')</script>");
}
} /// <summary>
/// GridView索引改变事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
GridViewBind();
}
///<summary>
///获取XML节点属性
///</summary>
///<param name="sname">节点属性</param>
///<returns></returns>
private string jiexiName(string sno,string s_attrib,string s_key,string s_kvalue)
{
XmlDocument doc = new XmlDocument();
//取到xml文档
doc.Load(Server.MapPath("XmlFile/TableColumns.xml"));
//取到根节点
XmlElement root = (XmlElement)doc.SelectSingleNode("ebaby");
foreach (XmlNode columns_node in root.SelectSingleNode("columns").ChildNodes)
{
XmlElement columns_element = (XmlElement)columns_node;
if (columns_element.GetAttribute("dateset_no") == sno && columns_element.GetAttribute(s_key) == s_kvalue)
{
return columns_element.GetAttribute(s_attrib);
}
}
return "";
} /// <summary>
/// 获取XML属性值(disp="on"的列)
/// </summary>
/// <returns></returns>
private string SelectJieXiName()
{
string str = null;
BindGridView();
//取XML里字段列表
int resCount = myds.Tables[0].Columns.Count;
for (int a = 0; a < resCount; a++)
{
str += jiexiName(a.ToString(), "DB_CNANME", "disp", "on") + ",";
}
while (str.IndexOf(",,") >= 0)
{
str = str.Replace(",,", ",");
}
//去掉列字段后面的逗号
str = str.Substring(0, str.Length - 1);
return str;
}
// <summary>
// 编辑事件
// </summary>
// <param name="sender"></param>
// <param name="e"></param>
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
}
///<summary>
///获取XML节点属性标题值
///</summary>
///<param name="sname">节点属性值</param>
///<returns></returns>
private List<XMLEns> SelectVal()
{
List<XMLEns> gridlist = new List<XMLEns>();
XmlDocument doc = new XmlDocument();
//取到xml文档
doc.Load(Server.MapPath("XmlFile/TableColumns.xml"));
//取到根节点
XmlElement root = (XmlElement)doc.SelectSingleNode("ebaby");
foreach (XmlNode columns_node in root.SelectSingleNode("columns").ChildNodes)
{
XmlElement columns_element = (XmlElement)columns_node;
if (columns_element.GetAttribute("query") == "on")
{
XMLEns x = new XMLEns ();
x.XID = columns_element.GetAttribute("DB_CNANME");
x.XName = columns_element.GetAttribute("grid_name");
gridlist.Add(x);
}
}
return gridlist;
} /// <summary>
/// 弹出错误消息对话框
/// </summary>
/// <param name="str"></param>
protected void ShowMessage(string str)
{
Response.Write("<script language='javascript'>alert('" + str + "');</script>");
} protected void Drop_DataBond(object sender, EventArgs e)
{
DropDownList1.Items.Add("——请选择——");
if (!IsPostBack)
{
DropDownList1.SelectedValue = "——请选择——";
}
}
} #region 属性
public class XMLEns
{
string xid = "";
string xname = "";
public string XID
{
get
{
return xid;
}
set
{
xid = value;
}
}
public string XName
{
get
{
return xname;
}
set
{
xname = value;
}
}
}
#endregion
}
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Data.OleDb;
using System.Xml;
using System.IO;
using System.Collections.Generic;
using System.Drawing;namespace Product_System
{
public partial class _Default : System.Web.UI.Page
{
DataSet myds = null;
//数据库连接
string strconn = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DropDownList1.DataValueField = "XID";
DropDownList1.DataTextField = "XName";
DropDownList1.DataSource = SelectVal();
DropDownList1.DataBind();
GridViewBind();
}
} /// <summary>
/// 绑定GridView
/// </summary>
public void BindGridView()
{
SqlConnection sqlcon = new SqlConnection(strconn);
sqlcon.Open();
string str = "select * from Product";
SqlDataAdapter sqlDA = new SqlDataAdapter(str,sqlcon);
myds = new DataSet();
sqlDA.Fill(myds,"Product");
GridView1.DataSource = myds.Tables["Product"];
GridView1.DataBind();
sqlcon.Close();
} /// <summary>
/// 动态GridView绑定
/// </summary>
public void GridViewBind()
{
DataTable dt = new DataTable();
dt = selectProduct(txtName.Text, DropDownList1.SelectedValue);
int number = myds.Tables[0].Columns.Count;
if (dt.Rows.Count > 0)
{
txtName.Text = "";
for (int i = 0; i < number; i++)
{
if (jiexiName(i.ToString(), "DB_CNANME", "disp", "on") != "")
{
BoundField field = new BoundField();
field.DataField = jiexiName(i.ToString(), "DB_CNANME", "disp", "on");
field.HeaderText = jiexiName(i.ToString(), "grid_name", "disp", "on");
GridView1.Columns.Add(field);
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
}
} /// <summary>
/// 删除数据
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public int DeleteProduct(int id)
{
string sql = "Delete from Product where ID='" + id + "'";
int result = ExecuteNonQuery(sql);
return result;
} /// <summary>
/// 查询数据
/// </summary>
/// <param name="TextVal">文本框值</param>
/// <param name="DropVal">下拉值</param>
/// <returns></returns>
private DataTable selectProduct(string TextVal, string DropVal)
{
string sql = "select " + SelectJieXiName() + " from Product where"; if (TextVal.Length > 0)
{
sql += " " + DropVal + " like '%" + TextVal + "%'";
}
else
{
sql = "select * from Product";
}
return ExecuteQuery(sql);
} /// <summary>
/// 对数据库执行 SQL 查询
/// </summary>
/// <param name="strSqlPro"></param>
/// <returns></returns>
public DataTable ExecuteQuery(string strSqlPro)
{
SqlDataAdapter DA = new SqlDataAdapter(strSqlPro, strconn);
DataSet ds = new DataSet();
DA.Fill(ds);
return ds.Tables[0];
} /// <summary>
/// 执行SQL语句,返回受影响的行数
/// </summary>
/// <param name="strSQL"></param>
/// <returns></returns>
public int ExecuteNonQuery(string strSQL)
{
int result = 0;
SqlConnection sqlCon = new SqlConnection(strconn);
sqlCon.Open();
SqlCommand sqlComm = new SqlCommand(strSQL, sqlCon);
result = sqlComm.ExecuteNonQuery();
sqlCon.Close();
return result;
} /// <summary>
/// 查询按钮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button1_Click1(object sender, EventArgs e)
{
GridViewBind();
} /// <summary>
/// 删除事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void GridView1_RowDeleting(object sender,GridViewDeleteEventArgs e)
{
int rowid = int.Parse(GridView1.DataKeys[e.RowIndex][0].ToString());
int result = DeleteProduct(rowid);
if (result > 0)
{
GridViewBind();
Response.Write("<script>alert('删除成功!')</script>");
}
else
{
Response.Write("<script>alert('删除失败!')</script>");
}
} /// <summary>
/// GridView索引改变事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
GridViewBind();
}
///<summary>
///获取XML节点属性
///</summary>
///<param name="sname">节点属性</param>
///<returns></returns>
private string jiexiName(string sno,string s_attrib,string s_key,string s_kvalue)
{
XmlDocument doc = new XmlDocument();
//取到xml文档
doc.Load(Server.MapPath("XmlFile/TableColumns.xml"));
//取到根节点
XmlElement root = (XmlElement)doc.SelectSingleNode("ebaby");
foreach (XmlNode columns_node in root.SelectSingleNode("columns").ChildNodes)
{
XmlElement columns_element = (XmlElement)columns_node;
if (columns_element.GetAttribute("dateset_no") == sno && columns_element.GetAttribute(s_key) == s_kvalue)
{
return columns_element.GetAttribute(s_attrib);
}
}
return "";
} /// <summary>
/// 获取XML属性值(disp="on"的列)
/// </summary>
/// <returns></returns>
private string SelectJieXiName()
{
string str = null;
BindGridView();
//取XML里字段列表
int resCount = myds.Tables[0].Columns.Count;
for (int a = 0; a < resCount; a++)
{
str += jiexiName(a.ToString(), "DB_CNANME", "disp", "on") + ",";
}
while (str.IndexOf(",,") >= 0)
{
str = str.Replace(",,", ",");
}
//去掉列字段后面的逗号
str = str.Substring(0, str.Length - 1);
return str;
}
// <summary>
// 编辑事件
// </summary>
// <param name="sender"></param>
// <param name="e"></param>
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
}
///<summary>
///获取XML节点属性标题值
///</summary>
///<param name="sname">节点属性值</param>
///<returns></returns>
private List<XMLEns> SelectVal()
{
List<XMLEns> gridlist = new List<XMLEns>();
XmlDocument doc = new XmlDocument();
//取到xml文档
doc.Load(Server.MapPath("XmlFile/TableColumns.xml"));
//取到根节点
XmlElement root = (XmlElement)doc.SelectSingleNode("ebaby");
foreach (XmlNode columns_node in root.SelectSingleNode("columns").ChildNodes)
{
XmlElement columns_element = (XmlElement)columns_node;
if (columns_element.GetAttribute("query") == "on")
{
XMLEns x = new XMLEns ();
x.XID = columns_element.GetAttribute("DB_CNANME");
x.XName = columns_element.GetAttribute("grid_name");
gridlist.Add(x);
}
}
return gridlist;
} /// <summary>
/// 弹出错误消息对话框
/// </summary>
/// <param name="str"></param>
protected void ShowMessage(string str)
{
Response.Write("<script language='javascript'>alert('" + str + "');</script>");
} protected void Drop_DataBond(object sender, EventArgs e)
{
DropDownList1.Items.Add("——请选择——");
if (!IsPostBack)
{
DropDownList1.SelectedValue = "——请选择——";
}
}
} #region 属性
public class XMLEns
{
string xid = "";
string xname = "";
public string XID
{
get
{
return xid;
}
set
{
xid = value;
}
}
public string XName
{
get
{
return xname;
}
set
{
xname = value;
}
}
}
#endregion
}
解决方案 »
- 各位大侠请进来帮我解决个问题,谢谢!
- 正则表达式的问题(不知道要发到哪个板块去,求高手解决)
- 【虚心请教孟子与幕白兄弟】如何拆分取得 html里的数组。。。。。。。。。。。。。。。。。。
- 如何将用Dreamweaver设计的网页在C#.NET里面应用?
- 导出gridview的特定列和特定行到excel中?
- 急急急急急急急急急-用下面这段代码来配合webservice下载文件?急急急急急急
- web窗体中的如何显示TIFF图片,并实现打印图片
- win2003server+asp.net2+sql server2005+c#环境下发送电子邮件的问题
- 数据库数据显示问题,在线急候!!
- 大家能给提供几个asp教程网站,初学者先谢过了
- 页面布局
- 关闭一个网页触发的是什么事件,怎么添加?
没明白什么意思