Tengo un controlador con dos métodos simples:Asp.Net MVC Modelo EditorTemplate se pierde después del anuncio
UserController Métodos:
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Details(string id)
{
User user = UserRepo.UserByID(id);
return View(user);
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Details(User user)
{
return View(user);
}
Entonces hay una visión simple para mostrar los detalles:
<% using (Html.BeginForm("Details", "User", FormMethod.Post))
{%>
<fieldset>
<legend>Userinfo</legend>
<%= Html.EditorFor(m => m.Name, "LabelTextBoxValidation")%>
<%= Html.EditorFor(m => m.Email, "LabelTextBoxValidation")%>
<%= Html.EditorFor(m => m.Telephone, "LabelTextBoxValidation")%>
</fieldset>
<input type="submit" id="btnChange" value="Change" />
<% } %>
Como se puede ver, utilizar una "LabelTextBoxValidation" editor de plantillas:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<string>" %>
<%= Html.Label("") %>
<%= Html.TextBox(Model,Model)%>
<%= Html.ValidationMessage("")%>
Mostrar la información del usuario no es un problema. La vista representa perfectamente los detalles del usuario. Cuando envío el formulario, el usuario del objeto se pierde. Depuré en la fila "return View (User);" en el método Detalles de publicación, el objeto de usuario está lleno de valores que aceptan valores nulos. Si no uso la plantilla del editor, el objeto del usuario se llena con los datos correctos. Entonces tiene que haber algo mal con la plantilla del editor, pero no puede descifrar de qué se trata. Sugerencias?
comparar el formulario presentado en ambos casos utilizando Firebug o Fiddler. Será diferente Arregla eso. –