Я пытаюсь реализовать селектор количества для количества товаров, добавленных в корзину.
У меня есть текстовое поле с динамическим именем для каждой строки товаров в каталоге.В каждой строке есть кнопка «Добавить в корзину».
Если я введу нужное количество в текстовое поле и нажму кнопку «Добавить в корзину», я хочу, чтобы введенное количество выбранного элемента было добавлено к моемуКорзина.
Действие контроллера, которое добавляет новое количество в базу данных для корзины, выглядит следующим образом:
public ActionResult AddToCart(int productID, int quant)
{
repository.AddItemToOrder(productID, quant);
return RedirectToAction("Browse");
}
Я знаю, что вызов действия "Обзор" для повторной визуализации страницыне самый эффективный метод.Я расскажу об этом позже.
Мой вопрос: как мне выполнить вызов этого действия контроллера «AddToCart» с обоими параметрами?
Мне удалось получить версию, работающую с 1параметр.В этом случае второй параметр в приведенном выше действии контроллера, Quant, был удален.
Строка в моем представлении была:
<input type="button" onclick="document.location.href = '<%: Url.Action("AddToCart") %>'+'?productID=<%: item.ProductID %>' " value="Add to Cart" />
Хотя это сработало, мне нужно иметь возможность ссылаться на текстовое поле для количества.
Я пробовал следующую строкуэто включает в себя несколько параметров в моем представлении:
<input type="button" onclick="document.location.href = '<%: Url.Action("AddToCart") %>'+'?productID=<%: item.ProductID %>'+'?quant=<%: item.ProductID %>' " value="Add to Cart" />
Значение, присвоенное «количеству», совпадает со значением, присвоенным «идентификатору продукта».Я сделал это, чтобы просто заставить что-то работать правильно.Как только он заработает, я планирую использовать значение текстового поля с динамическим именем.(В этом мне тоже нужна помощь)
Когда я проверил и нажал кнопку строки, я получил следующую ошибку:
Словарь параметров содержит пустую запись для параметра 'productID'необнуляемого типа' System.Int32 'для метода' System.Web.Mvc.ActionResult AddToCart2 (Int32, Int32) 'в' OER.Controllers.eCommerceController '.Необязательный параметр должен быть ссылочным типом, обнуляемым типом или быть объявлен как необязательный параметр.Имя параметра: параметры