session + List<T> 实现购物车(asp.net mvc)
2017-04-07 21:35
736 查看
毕业设计做电子商务网站,结果卡购物车的实现上卡了N久,以下是我的思路:
1.session 用于存储用户名和购物车
2.List <T>用于存储购物车对象
3.Ajax 传值
部分代码:
1. 购物车:
3.Ajax 传值
$("#addCart").click(function () {
if ($("#_username").is(":empty")) {
$("#warningModal").modal();
$("#modal_info").text("您还没登录,登录之后才可以对商品进行添加");//判断用户是否登录
return false
} else {
var jsonData = "{\"albumId\":\"" + $("#_number").text() + "\", \"quantity\":\""+ $("#qunatity").val() + "\"}";//构建json
$.ajax({
type:"post",
dataType: "text",
contentType: "application/json",
url: "/Cart/CartAdd",
data: jsonData,
success: function (data) {
alert(data);
}
});
}
});
1.session 用于存储用户名和购物车
2.List <T>用于存储购物车对象
3.Ajax 传值
部分代码:
1. 购物车:
public class Cart(){ public int cartId{get;set;} public int albumId{get;set;} public int quantity{get;set;} }2. 购物车实现:
public string CartAdd(string albumId,string quantity) { if(session["username"]==null) return RedictToAction("/Home/Login"); int Id = int.Parse(albumId); int num = int.Parse(quantity); int cartid=0; string str = null; string username = Session["username"].ToString(); tb_cart cart = new tb_cart(); List<tb_cartDetails> shopcar = null; if (Session["shopcart"] == null) { shopcar = new List<tb_cartDetails>(); cartDetail.cartId = cartid; cartDetail.albumId = Id; cartDetail.quantity = num; shopcar.Add(cartDetail); Session["shopcart"] = shopcar; } else { shopcar = Session["shopcart"] as List<tb_cartDetails>; for (int i = 0; i<shopcar.Count;i++ ) { if (shopcar[i].albumId == Id) { shopcar[i].quantity = shopcar[i].quantity + num; Session["shopcart"] = shopcar; str = "e"; } } if (str == "e") return str; else { cartDetail.cartId = cartid; cartDetail.albumId = Id; cartDetail.quantity = shopcar.Add(cartDetail); Session["shopcart"] = shopcar; } }
return "添加成功"; }
3.Ajax 传值
$("#addCart").click(function () {
if ($("#_username").is(":empty")) {
$("#warningModal").modal();
$("#modal_info").text("您还没登录,登录之后才可以对商品进行添加");//判断用户是否登录
return false
} else {
var jsonData = "{\"albumId\":\"" + $("#_number").text() + "\", \"quantity\":\""+ $("#qunatity").val() + "\"}";//构建json
$.ajax({
type:"post",
dataType: "text",
contentType: "application/json",
url: "/Cart/CartAdd",
data: jsonData,
success: function (data) {
alert(data);
}
});
}
});
相关文章推荐
- asp.net mvc 如何将controller 里一个action 返回值为list<>的值输出到view
- asp.net mvc(一) ----------简单封装成通用的List<T>集合
- 如何实现IEnumerable<T>和IEnumerator接口,一个ASP.NET MVC日志模型的实现
- Asp.net MVC ajax 上传List<Model>
- JSON之Asp.net MVC C#对象转JSON,DataTable转JSON,List<T>转JSON,JSON转List<T>,JSON转C#对象
- 转:ASP.NET MVC 将IList<T>导出Excel文档的泛型类
- JSON之Asp.net MVC C#对象转JSON,DataTable转JSON,List<T>转JSON,JSON转List<T>,JSON转C#对象
- JSON之Asp.net MVC C#对象转JSON,DataTable转JSON,List<T>转JSON,JSON转List<T>,JSON转C#对象
- JSON之Asp.net MVC C#对象转JSON,DataTable转JSON,List<T>转JSON,JSON转List<T>,JSON转C#对象
- ASP.NET.MVC--注解和反射将Enum转换List<SelectListItem>为@Html.DropDownListFor()下拉列表的通用方法
- ASP.NET MVC前端提交List<Model>到controller
- ASP.NET MVC 将IList<T>导出Excel文档的泛型类(继承自ActionResult)
- JSON之Asp.net MVC C#对象转JSON,DataTable转JSON,List<T>转JSON,JSON转List<T>,JSON转C#对象
- ASP.NET MVC DropDownList扩展,实现foreach@Html.DropDownListFor(p=>p.Type,p.Type,TypeItem)
- Nop-Fluent+AutoFAC模式在ASP.NET MVC中的应用场景<四>
- asp.net 实现省市级联-----<简单方法2>----前台实现
- ASP.NET MVC 3: Razor’s @: and <text> syntax
- asp.net读取Xml返回IList<T>集合
- ASP.NET正则实现表情替换为图片,如[hanx]替换为<img src="img/hanx.gif"/>
- asp.net 实现省市级联-----<简单方法1>