ASP.NET MVC 2 - Html.EditorFür einen nullfähigen Typ?

Ich habe zwei Editorvorlagen: eine für Dezimalzahlen und eine für Dezimalzahlen. (nullable)

Aber wenn ich eine nullbare Dezimalstelle in meinem Modell habe, wird versucht, den normalen Dezimalstellen-Editor zu laden:

<%: Html.EditorFor(model => model.SomeDecimal )%>
<%: Html.EditorFor(model => model.SomeNullableDecimal )%>

Der erste funktioniert einwandfrei und lädt die Dezimaleditorvorlage. Der zweite versucht ebenfalls, die Dezimalschablone zu laden (und schlägt fehl, weil es kein Dezimalfeld ist).

Die Fehlermeldung lautet:

The model item passed into the dictionary is null, but this dictionary requires 
a non-null model item of type 'System.Decimal'. 

Meine Vorlagen werden folgendermaßen deklariert:

Dezimalschablone:

<%@ Control Language="C#" 
Inherits="System.Web.Mvc.ViewUserControl<System.Decimal>" %>

Nullable Decimal template:

<%@ Control Language="C#" 
Inherits="System.Web.Mvc.ViewUserControl<System.Decimal?>" %>

Ich weiß, dass ich es zum Laufen bringen kann, indem ich den Vorlagennamen übergebe, zB

Aber ich würde es wirklich vorziehen, einfach automatisch zu arbeiten, indem ich den Typ wie alle anderen Vorlagen verwende.

<%: Html.EditorFor(model => model.SomeNullableDecimal, 
"NullableDecimalTemplate" )%>

Antworten auf die Frage(10)

Ihre Antwort auf die Frage