在asp.net中制作购物车的正确方法

时间:2013-12-22 12:07:33

标签: c# asp.net

我正在使用存储在Session中的DataTable以及存储在DataTable中的所有项目使用c#在asp.net中制作购物车。

public DataTable dtCart = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{

    if (!IsPostBack)
    {
        if (Session["dtCart"] == null) { CreateCartTable(); }

    }
}
protected void CreateCartTable()
{
    dtCart.Rows.Clear();
    dtCart.Columns.Clear();

    dtCart.Columns.Add(new DataColumn("Prd_Id", Type.GetType("System.String")));
    dtCart.Columns.Add(new DataColumn("Prd_Name", Type.GetType("System.String")));
    dtCart.Columns.Add(new DataColumn("Prd_Img", Type.GetType("System.String")));
    dtCart.Columns.Add(new DataColumn("Qty", Type.GetType("System.Int32")));
    dtCart.Columns.Add(new DataColumn("Rate", Type.GetType("System.Decimal")));
    dtCart.Columns.Add(new DataColumn("Amount", Type.GetType("System.Decimal")));
    dtCart.Columns.Add(new DataColumn("TotalAmount", Type.GetType("System.Decimal")));

    Session["dtCart"] = dtCart;

}

这种正确的方法或任何其他方式是否更优雅,更轻松应用? 仅供参考我正在使用网络表单。

1 个答案:

答案 0 :(得分:2)

你可以上课:

public class Cart
{
     public string Prd_Id{set;get;}
     public string Prd_Name{set;get;}
     //and so on...         
}

然后在页面中:

Cart obj=new Cart{Prd_Id="1",Prd_Name="John"};
Session["dtCart"]=obj;