Я создаю ASP. NET MVC веб-приложение, которое имеет несколько форм в представлении. Я хочу, чтобы пользователь мог заполнять каждую форму и собирать данные для обработки. Эти формы имеют уникальную модель 3 для этой страницы, которую нужно каким-то образом добавить в представление, поэтому я попробовал ViewModel.
ViewModel.cs
public class ViewModel
{
public ConModel ConModel { get; set; }
public CompanyModel CompanyModel { get; set; }
public ComplaintModel ComplaintModel { get; set; }
public KnowledgeModel KnowledgeModel { get; set; }
}
Все модели в ViewModel выглядят одинаково:
public class ConModel
{
[Required]
[Display(Name = "First Name")]
public string FirstName { get; set; }
. . .
}
Я загружаю ViewModel в мое представление в контроллере:
public class FormsController : Controller
{
public IActionResult Index()
{
ViewModelFraud viewModelFraud = new ViewModelFraud();
viewModelFraud.ConModel = new ConModel();
viewModelFraud.CompanyModel = new CompanyModel();
. . .
return View(viewModelFraud);
}
}
На мой взгляд, я создаю помощник по тегам в моем form:
<form asp-page-handler="Con" method="post">
<div class="col-sm-12">
<div class="custom-control custom-switch">
<input type="text" class="custom-control-input" id="FirstName">
<label class="custom-control-label" asp-for="FirstName"></label>
</div>
</div>
. . .
Я использую asp-for="FirstName"
помощник по тегам, чтобы получить метку, добавленную к этому элементу ввода из модели, но я получаю ошибки сборки, если я попытаюсь. Ошибка подразумевает, что помощник по тегам не видит модель. Я загружаю их неправильно или вообще?