Создание действия для получения и отображения объекта корзины покупок, хранящегося в сеансе

Hi Everyone... I am new in ASP.NET MVC. i have one doubt. without using EF to add more products in shopping cart using MVC razor My Home controller class

    public void AddOrderItem(Int64 ID, int quantity)
    {            
        OrderDO order = (OrderDO)Session["Order"];
        order.Items.Add(new OrderItem(ID, quantity));
        Session["Order"] = order;  
    }
}
 public class OrderDO
    {
        private IList _items;
        public OrderDO()
        {
            this._items = new List();
        }
        public IList Items
        {
            get { return this._items; }
        }
    }
    public class OrderItem
    {
        public OrderItem()
        {
        }
        public OrderItem(Int64 ID, int quantity)
        {
            this.ID= ID;
            this.Quantity = quantity;
        }
        public Int64 ID{ get; set; }
        public int Quantity { get; set; }
    }

Мой скрипт на странице продукта

$(document).ready(function() {
        $('#AddToCard').click(function() {
            var ProductID = $('#txtproductID').val();
            var Quantity = $('#txtQuantity').val();

            $.ajax({
                type: "POST",
                url: '../Home/AddOrderItem',
                data: { ID: ProductID, quantity: Quantity },
                success: function (data) {

                    if (data) {

                    }
                }
            });
        });

В приведенном выше коде работает нормально. Я нажимаю кнопку корзины покупок, как получить список покупок деталей

        public ActionResult Details(int id)
        {
            OrderDO order = (OrderDO)Session["Order"];

            return View();
        }
0
nl ja de
Также отправьте код и сообщите, что вы пытались сделать, чтобы выполнить то, что вы готовы сделать.
добавлено автор lopezbertoni, источник
Не могли бы вы добавить несколько подробностей? Какие продукты в какой торговой карте? :)
добавлено автор Vasil Trifonov, источник

1 ответы

Вы можете передать его в качестве модели для представления:

public ActionResult Details(int id)
{
    OrderDO order = (OrderDO)Session["Order"];
    return PartialView(order.Items);
}

который будет строго типизирован для этой модели, и вы можете отобразить детали:

@model IEnumerable
@ {
    var grid = new WebGrid(Model);
}

@grid.GetHtml()

и поскольку вы, похоже, вызываете это действие контроллера с помощью AJAX, не забудьте вставить результат в DOM в ваш обратный вызов success :

$.ajax({
    type: "POST",
    url: '../Home/AddOrderItem',
    data: { ID: ProductID, quantity: Quantity },
    success: function (data) {
        $('#someContentPlaceholder').html(data);
    }
});
1
добавлено
Спасибо за ваш ценный ответ Дарин Димитров ..
добавлено автор Raja, источник
DotNetRuChat
DotNetRuChat
2 992 участник(ов)

Чат русскоязычного .NET сообщества http://dotnet.ru/ Вам могут быть интересны: @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @xamarin_russia, @microsoftstackjobs, @uwp_ru Флуд в @dotnettalks

Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

pro.net
pro.net
710 участник(ов)

Обсуждение .NET Framework и всего, что с ним связано. Правила: не флудить не по теме, уважать ваших коллег и никакой рекламы (объявления о вакансиях можно согласовать с @AlexFails). Флудилка: @dotnettalks Участник @proDOT

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot

.NET Talks: Force Push Masters
.NET Talks: Force Push Masters
490 участник(ов)

Свободный чат .NET разработчиков. Правила: t.me/dotnettalks/56823 Вам могут быть интересны: @dotnetruchat, @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @dotnetgroup, @xamarin_russia, @microsoftstackjobs, @uwp_ru http://combot.org/chat/-1001128250813

.NET Chat Убежище
.NET Chat Убежище
246 участник(ов)

Чат .NET разработчиков под эгидой MSK/SPB .NET Community Group Вам могут быть интересны: @fsharp_chat, @dotnetruchat, @cilchat, @xamarin_russia, @microsoftstackjobs, @dotnetgroup Флуд в @dotnettalks

.NET CIL Chat
.NET CIL Chat
54 участник(ов)

.NET CIL (aka IL aka MSIL)