我正在嘗試使用 JavaScript 動態添加到我的 ViewModel 中的列表屬性。每當我提交表單時,post 控制器的列表中都沒有項目。我嘗試使用 razor 語法將其添加到 JavaScript 函數中的列表,如下所示:@{
Model.Contacts.Add(new Contact { ID = 1, FirstName = "Tester" })}只是想看看我是否能在列表中找到一個項目。我還在頁面頂部做了它,看看它是否只是因為它是在 JavaScript 中的。但是,當我提交表單時,同樣的事情發生了,列表中沒有項目。我不知道是否需要創建 API 才能提交數據,但 Company 屬性會在其中提交數據。我希望能夠提交這兩個屬性而無需創建 API。我不知道是否有一種特殊的剃刀語法或類可以用來實現這一點。請幫忙!謝謝你。視圖模型:public class CompanyViewModel { public Company Company { get; set; } public List<Contact> Contacts { get; set; } public CompanyViewModel() { this.Contacts = new List<Contact>(); } }控制器: public IActionResult Create() { var vm = new CompanyViewModel(); return View(vm); } [HttpPost] [ValidateAntiForgeryToken] public async Task<IActionResult> Create(CompanyViewModel companyView) { if (companyView.Company != null) { _context.Add(companyView.Company); if (companyView.Contacts != null) _context.Contacts.AddRange(companyView.Contacts); await _context.SaveChangesAsync(); return RedirectToAction(nameof(Index)); } return View(companyView); }看法:@model CheckbookRegister.Models.CompanyViewModel@{ ViewData["Title"] = "Create";}<h1>Create Company</h1><hr /><form asp-action="Create"> <!-- Omitted for brevity --> <div class="row justify-content-between"> <h4 class="col mb-0 align-self-end">Contacts</h4> <div class="col-md-auto text-right mt-2"> <a class="col btn btn-sm btn-outline-success px-4" id="add" href="#" onclick="addContact()">Add</a> </div> </div>
如何使用 JavaScript 和 C# 在 ASP.NET Core 3.1 MVC 中使用
jeck貓
2022-07-21 22:23:43