ASP. NET MVC - ViewModel имеет значение null при попытке отправки на контроллер - PullRequest
0 голосов
/ 15 февраля 2020

Я пытаюсь отправить ViewModel в контроллер, используя форму, но когда вызывается метод в контроллере, все свойства ViewModel имеют значение null.

Вот моя виртуальная машина:

 public class CheckoutViewModel
 {
     public Customer Customer { get; set; }

     public CreditCard CreditCard { get; set; }

     public ShippingAddress ShippingAddress { get; set; }

     public IEnumerable<ShoppingCartItem> ShoppingCartItems { get; set; }

 }

В моем контроллере у меня есть два метода Checkout, один из которых не принимает параметров, а другой принимает CheckoutViewModel. Вот подписи:

public IActionResult Checkout()
[HttpPost]
public IActionResult Checkout(CheckoutViewModel checkoutViewModel)

В моей Checkout.cshtml моя форма выглядит так:

 <form class="form-group" method="post" asp-controller="Order" asp-action="Checkout">
                <label asp-for="ShippingAddress.Address1"></label>
                <input class="form-control" asp-for="ShippingAddress.Address1" type="text" name="Address1" value="" />
                <label asp-for="ShippingAddress.Address2"></label>
                <input class="form-control" asp-for="ShippingAddress.Address2" type="text" name="Address2" value="" />
                <div class="form-row">
                    <div class="col">
                        <label asp-for="ShippingAddress.City"></label>
                        <input class="form-control" asp-for="ShippingAddress.City" type="text" name="City" value="" />
                    </div>
                    <div class="col">
                        <label asp-for="ShippingAddress.State"></label>
                        <input class="form-control" asp-for="ShippingAddress.State" type="text" name="State" value="" />
                    </div>
                </div>
/*
More inputs for CreditCard, etc...
*/
</form>

Любая идея, почему все свойства в моем контроллере равны нулю ? Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...