Реализация if else в MVC razor
Я довольно новичок в этом деле. ASP.Net MVC. Извините, если мой вопрос покажется вам глупым. но я не уверен, как заставить вещи работать между представлениями и контроллерами.
У меня есть список продуктов с ценой и статическим выпадающим списком для реализации стратегий скидок на основе выбранного плана скидок.
Вот моя страница продукта
<pre><table class="table"> <tr> <th> @Html.DisplayNameFor(model => model.ProductName) </th> <th> @Html.DisplayNameFor(model => model.ProductPrice) </th> <th></th> </tr> @foreach (var item in Model) { <tr> <td> @Html.DisplayFor(modelItem => item.ProductName) </td> <td> @Html.DisplayFor(modelItem => item.ProductPrice) </td> <td> @Html.DropDownList("Status", new List<SelectListItem> { new SelectListItem{ Text="Student Discount", Value = "1" }, new SelectListItem{ Text="Loyalty Discount", Value = "0" } }) </td> <
вот мой контроллер Add product
public ActionResult Index() { Customers customer = new Customers(); return View(db.Products.ToList()); }
Что я уже пробовал:
Я хочу показать сниженную цену на странице, основанную на выборе из выпадающего списка.
Я реализую это приложение windows form stretegy в своем приложении MVC .
Но я не уверен, как справиться с этим в представлениях и контроллере.
Любые намеки будут оценены по достоинству.
вот код из приложения windows form
private void btnApplyDiscounts_Click(object sender, EventArgs e) { Customer customer = new Customer(); if (chkLoyalty.Checked && chkStudent.Checked) { customer.SetDiscountStrategy(new LoyalStudentDiscount()); } else if (chkLoyalty.Checked) { customer.SetDiscountStrategy(new LoyaltyDiscount()); } else if (chkStudent.Checked) { customer.SetDiscountStrategy(new StudentDiscount()); } else { customer.SetDiscountStrategy(new NoDiscount()); } decimal price = customer.ApplyDiscount(numTotalSale.Value); lblFinalPrice.Text = price.ToString("C"); } } }
F-ES Sitecore
Вы не всегда можете легко" конвертировать " приложение Windows Forms в веб-сайт, вам нужно оценить разницу между приложением Windows и веб-сайтом. В приложении Windows графический интерфейс, бизнес-логика и т. д. управляются вашим .net-кодом, а ваш .net-код полностью управляется событиями. В веб-приложении ваш .net-код действительно получает "события" только через пост-бэк страницы, а ваш .net-код создает только начальную html-страницу, после чего передним концом можно динамически манипулировать только с помощью javascript.