Я изучаю ASP.NET MVC 3 и пытаюсь создать представление с одной формой, состоящей из нескольких моделей, связанных между собой внешним ключом.Конечная цель - вставить одну форму во все таблицы базы данных.
Проблема в том, что я не могу понять, почему, когда я щелкаю правой кнопкой мыши, чтобы создать представление, форма не генерируется автоматически в cshtml.файл.Автоматически сгенерированный код очень помогает, так как у меня есть много таблиц, которые связывают вместе, и много полей, которые я должен проверить и вставить.Если невозможно автоматически сгенерировать форму, какой самый эффективный / элегантный способ сделать это?
Вот упрощение того, что у меня есть.
Модель:
class Customer
{
[Key]
public UInt64 CustomerId { get; set; }
[Required(ErrorMessage = "Name is required.")]
[Display(Name = "Customer Name")]
[MaxLength(50)]
public string FullName { get; set; }
}
class CustomerAdditionalDetails1
{
[ForeignKey("Customer")]
public UInt64 CustomerId { get; set; }
[Required(ErrorMessage = "This info is required.")]
[Display(Name = "Customer Information")]
[MaxLength(50)]
public string SomeInfo { get; set; }
}
class CustomerAdditionalDetails2
{ // same foreign key as CustomerAddtionalDetails1, but with different properties
}
class CustomerAdditionalDetails3
{ // same foreign key as CustomerAddtionalDetails1, but with different properties
}
...
public class CustomerModel
{
public Customer Customer { get; set; }
public CustomerAdditionalDetails1 CustomerAdditionalDetails1 { get; set; }
public CustomerAdditionalDetails2 CustomerAdditionalDetails2 { get; set; }
public CustomerAdditionalDetails3 CustomerAdditionalDetails3 { get; set; }
...
}
Контроллер:
public ActionResult Submit()
{
return View();
}
[HttpPost]
public ActionResult Submit(CustomerModel customer)
{
return View();
}
Пожалуйста, помогите!