ASP.NET MVC2 - Parameterattribut im Modellbinder auflösen
-
23-09-2019 - |
Frage
Eine Aktion wie:
public ActionResult DoStuff([CustomAttribute("foo")]string value) {
// ...
}
Gibt es eine Möglichkeit, die Instanz von zu lösen? value
's CustomAttribute
Innerhalb eines Modellbinders? Ich habe mir die MVC -Quellen und die Chancen angesehen, dass ich es einfach falsch mache, aber als ich versuchte, ihren Code zu replizieren, der das BindAttribute für ein komplexes Modell abruft und GetatTributes () das von mir gesuchte Attribut nicht zurückgerufen hat.
DefaultModelBinder
GetTypeDescriptor(controllerContext, bindingContext).GetAttributes();
Lösung
Eine Diskussionskarte verfügt über zwei Inhaltstypen: Diskussion und Nachricht. Die Diskussion ist der High-Level-Inhaltstyp, die Nachricht ist alle Antworten. Wenn Sie das Feld "Status" oder "Status" oder in jedem Fall des Diskussionstyps hinzufügen, gilt es nur für die Frage, nicht die Antworten.
- .
- Erstellen Sie eine Site-Spalte mit dem Namen Status und geben Sie sie an, welche Werte Sie möchten.
- Erstellen Sie Ihren Diskussionsrat.
- Listeneinstellungen für das Diskussionsvorstand und unter
Inhaltstypen klicken Sie auf Diskussion. - Fügen Sie die Spalte der Statusstelle hinzu.
Wenn Ihr Benutzer eine neue Frage erstellt, ist das einzige Artikel in der Liste mit dem angehängten Status die Frage.
Antworten haben nur das Körperfeld: