Hatte eine ähnliche Anforderung, bei der ich einen Wert an ein benutzerdefiniertes Attribut übergeben musste.
Das Problem hier ist, dass Attribute Dekorationen Variablen nicht zulassen. Sie erhalten einen Kompilierzeitfehler:
Eine Objektreferenz ist für das nicht statische Feld, die Methode oder erforderlich Eigenschaft
Hier ist, wie ich es geschafft habe:
In Controller
%Vor%In Attribut
%Vor% Beachten Sie, dass die Zeichenfolge in .Name.Equals("SomeId")
mit der Deklaration public int SomeId
Ich würde so etwas vorschlagen wie @ Olivers Antwort (das würde ich sowieso machen), aber dann habe ich gemerkt, dass du keine Konstanten weitergeben willst.
Was ist dann mit so etwas?
%Vor% Und dann auf MyConfig.MinStringLength
von der Validierung zugreifen?
Ich stimme dir zu, dass es nicht zu schön ist.
Tags und Links asp.net-mvc-4