📄 shopcart.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.OleDb;
namespace Bookshop
{
/// <summary>
/// ShopCart 的摘要说明。
/// </summary>
public class ShopCart : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.ImageButton ImageButton1;
protected System.Web.UI.WebControls.DataGrid DataGrid1;
private void Page_Load(object sender, System.EventArgs e)
{
if( Session["uid"] == null )
{
Label1.Text = "You haven't login the shop system!";
this.ImageButton1.Visible=false;
}
else
{
ArrayList temp = ((ArrayList)Session["bookCart"]);
DataTable table = new DataTable();
table.Columns.Add( new DataColumn( "Book ID", System.Type.GetType("System.Int32") ) );
table.Columns.Add( new DataColumn( "Book Name", System.Type.GetType("System.String") ) );
table.Columns.Add( new DataColumn( "Book Price", System.Type.GetType("System.Double") ) );
float sum = 0;
if( temp.Count == 0 )
{
this.DataGrid1.Visible = false;
this.ImageButton1.Visible = false;
this.Label1.Text = "You haven't buy anything!";
}
else
{
this.DataGrid1.Visible = true;
this.ImageButton1.Visible = true;
for( int i = 0; i < temp.Count; i++ )
{
BookInfo book = (BookInfo)temp[i];
DataRow tempRow = table.NewRow();
tempRow["Book ID"] = i;
tempRow["Book Name"] = book.bookName;
tempRow["Book Price"] = book.bookPrice;
table.Rows.Add( tempRow );
sum += book.bookPrice;
}
this.DataGrid1.DataSource = table;
this.DataGrid1.DataBind();
Label1.Text = "You have bought <b>"+temp.Count+"</b> books, and the price is <b>$"+sum+"</b> in all";
}
}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.ImageButton1.Click += new System.Web.UI.ImageClickEventHandler(this.ImageButton1_Click);
this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);
this.DataGrid1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemDataBound);
this.DataGrid1.SelectedIndexChanged += new System.EventHandler(this.DataGrid1_SelectedIndexChanged);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if( e.Item.ItemType != ListItemType.Header && e.Item.ItemType != ListItemType.Footer )
{
if( e.CommandName == "remove" )
{
((ArrayList)Session["bookCart"]).RemoveAt( Int32.Parse(e.Item.Cells[1].Text) );
string[] temp = Request.Url.ToString().Split('/');
Response.Write( "<meta http-equiv=\'refresh\' content=\'0;url=" + temp[temp.Length-1] + "\'>" );
}
}
}
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
e.Item.Cells[1].Visible = false;
}
private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
OleDbConn.ExecuteNonQuery( "insert into Carts(dat,notes) values('"+DateTime.Now+"','"+Session["uname"].ToString()+"')" );
OleDbDataReader tempReader = OleDbConn.ExecuteReader( "select top 1 cart_id from Carts order by cart_id desc" );
//Label1.Text += "insert into Carts(date,notes) values('"+DateTime.Now+"','"+Session["uname"].ToString()+"')<br>";
if( tempReader.Read() )
{
int cart_id = (int)tempReader["cart_id"];
OleDbConn.CloseConn();
ArrayList temp = ((ArrayList)Session["bookCart"]);
for( int i = 0; i < temp.Count; i++ )
{
BookInfo book = (BookInfo)temp[i];
//Label1.Text += "insert into CartItems(cart_id,title_id,quantity,price) values("+1+","+book.bookId+",1,"+book.bookPrice+")<br>";
OleDbConn.ExecuteNonQuery( "insert into CartItems(cart_id,title_id,quantity,price) values("+cart_id+","+book.bookId+",1,"+book.bookPrice+")" );
}
}
OleDbConn.CloseConn();
((ArrayList)Session["bookCart"]).Clear();
string[] aa = Request.Url.ToString().Split('/');
Response.Write( "<meta http-equiv=\'refresh\' content=\'0;url=" + aa[aa.Length-1] + "\'>" );
}
private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)
{
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -