Il semble qu'il ne soit plus possible de modifier un objet personnalisé après ma mise à niveau vers asp.net mvc 2 rc 2? J'utiliser cette approche http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-4-custom-object-templates.html avec un objet personnalisé comme celui-ci:Html.EditorFor ne rend rien si j'utilise un objet personnalisé?
Mon modèle a juste une propriété, mais hérite d'une classe de base abstraite public class Page: ContentItem { [DataType (DataType.MultilineText)] de chaîne publique virtuelle MainIntro { se mettre; } // Cette propriété rend correcte
[DisplayFormat(NullDisplayText="(null value)")]
public virtual DetailCollection Tags { get; set; }
}
Mon contrôleur ressemble à ceci
public ActionResult Edit(string pagePath) {
var page = _repository.GetByUrlSegment(pagePath);
return View(page.EditViewName, new DashboardModel(page, RootPages));
}
Et moi ressemble à ce
<% using (Html.BeginForm("update","Dashboard", FormMethod.Post, new { name = "editForm" })) %>
<% { %>
<div>
<%=Html.EditorFor(model => model.CurrentItem) %>
<div class="editor-button">
<input type="submit" value="Save" />
</div>
</div>
<% } %>
Pouvez-vous poster un peu plus de code ... comme le blog que vous êtes quorint n'utilise pas EditorFor. – AxelEckenberger
Donc, j'ai maintenant mis à jour ma question avec un peu plus de code – Marcus
Il semble que c'est comme ça que ça fonctionne. Je l'ai trouvé dans le blog de Scott Guthries Les nouvelles méthodes d'aide basées sur des modèles Html.EditorFor() et Html.DisplayFor() permettent maintenant d'auto-échafauder les propriétés simples (et ne rendent pas les sous-propriétés complexes par défaut). Alors, comment puis-je activer cette fonctionnalité à nouveau? – Marcus