Eu quero ter 2 modelos em uma visão. A página contém ambos LoginViewModel
e RegisterViewModel
.
por exemplo
public class LoginViewModel
{
public string Email { get; set; }
public string Password { get; set; }
}
public class RegisterViewModel
{
public string Name { get; set; }
public string Email { get; set; }
public string Password { get; set; }
}
Preciso criar outro ViewModel que possua esses 2 ViewModels?
public BigViewModel
{
public LoginViewModel LoginViewModel{get; set;}
public RegisterViewModel RegisterViewModel {get; set;}
}
Eu preciso que os atributos de validação sejam antecipados para a exibição. É por isso que eu preciso dos ViewModels.
Não existe outra maneira como (sem o BigViewModel
):
@model ViewModel.RegisterViewModel
@using (Html.BeginForm("Login", "Auth", FormMethod.Post))
{
@Html.TextBoxFor(model => model.Name)
@Html.TextBoxFor(model => model.Email)
@Html.PasswordFor(model => model.Password)
}
@model ViewModel.LoginViewModel
@using (Html.BeginForm("Login", "Auth", FormMethod.Post))
{
@Html.TextBoxFor(model => model.Email)
@Html.PasswordFor(model => model.Password)
}
ViewBag
por cada um na vista, funciona muito bem
@
na frente do nome dela , como fiz aqui.