Я изучаю 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();
}
Пожалуйста, помогите !