如何解决asp.net核心应用程序中的购物车不起作用
我需要在asp.net核心应用程序中创建一个购物车,但单击“添加到购物车”按钮不起作用,并且“购物车”图标不显示并且没有将商品保存在购物车中时,..有人可以帮助我吗:(?? >
这是我在购物车模型中的方法
public string ShoppingCartID { get; set; }
public List<ShoppingCartItem> ShoppingCartItems { get; set; }
public static ShoppingCart GetCart(IServiceProvider service)
{
ISession session = service.GetrequiredService<IHttpContextAccessor>()?.HttpContext.Session;
var context = service.GetService<DataContext>();
string cartId = session.GetString("CartId") ?? Guid.NewGuid().ToString();
session.SetString("CardId",cartId);
return new ShoppingCart(context) { ShoppingCartID = cartId };
}
public void AddToCart(Book book,int Amount)
{
var shoppingCartItem = _DataContext.shoppingCartItems.SingleOrDefault(s => s.Book.Bookid == book.Bookid && s.ShoppingCartId == ShoppingCartID);
if (shoppingCartItem == null) {
shoppingCartItem = new ShoppingCartItem
{
ShoppingCartId = ShoppingCartID,Book = book,Amount = 1,};
_DataContext.shoppingCartItems.Add(shoppingCartItem);
}
else
{
shoppingCartItem.Amount++;
}
_DataContext.SaveChanges();
}
这是我控制器中的方法
[Authorize]
// GET: ShoppingCartController
public ActionResult Index()
{
var items = _shoppingCart.GetShoppingCartItems();
_shoppingCart.ShoppingCartItems = items;
var ShopVM = new ShoppingCartviewmodel
{
ShoppingCart = _shoppingCart,ShoppingCartTotal = _shoppingCart.GetShoppingCartTotal(),};
return View(ShopVM);
}
[Authorize]
public RedirectToActionResult AddToCart(int bookid)
{
var slecetBook = _bookRepository.Preffedbooks.FirstOrDefault(p => p.Bookid == bookid);
if(slecetBook != null)
{
_shoppingCart.AddToCart(slecetBook,1);
}
return RedirectToAction("Index");
}
@if (Model.ShoppingCart.ShoppingCartItems.Count > 0 && SignInManager.IsSignedIn(User))
{
<li style="padding-top:8px;">
<a asp-controller="ShoppingCart">
<span class="fa fa-cart-plus"></span>
<span id="cart-status">
@Model.ShoppingCart.ShoppingCartItems.Count
</span>
</a>
</li>
}
谁能帮助我:( ??!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。