HtmlHelper Methoden und RouteValueDictionary

Beim schreiben einer htmlhelper-Erweiterung, wenn ich will, zu unterstützen, die ähnlich strukturierten ctors für meine htmlhelper-Erweiterung Methode, die ich verwenden RouteValueDictionary wie folgt:

public static string ListBoxDict(this HtmlHelper htmlHelper, 
                                 string name, 
                                 object value, 
                                 object htmlAttributes)
{
    return ListBoxDict(htmlHelper, 
                       name, 
                       value, 
                       ((IDictionary<string, object>)
                           new RouteValueDictionary(htmlAttributes)));
}

Meine Frage ist wirklich, warum die Notwendigkeit für RouteValueDictionary ... ich weiß, Sie können nicht nur werfen die htmlAttributes zu IDictionary<string, object> ... aber ich bin nicht sicher, warum, und das mag sein, wo ich bin verwirrt. Sollte nicht RouteValueDictionary werden mit Routing zu tun und daher auch nichts zu tun mit HtmlHelper Methoden? Wie gesagt, ich bin wahrscheinlich fehlt der Punkt, so würde ich mich freuen wenn jemand mir sagen könnte, was ich verpasst habe.

Cheers...

edit: in Antwort auf Dan ' s Antwort -->

War ich einfach nach, was ich gesehen hatte, die in den mvc-source-code für Eingabe-Helfer...

  • siehe "src\SystemWebMvc\Mvc\Html\InputExtensions.cs"

Tut es wie folgt:

public static string TextBox(this HtmlHelper htmlHelper, 
                             string name, 
                             object value, 
                             object htmlAttributes)
{
    return TextBox(htmlHelper, 
                   name, 
                   value,
                   new RouteValueDictionary(htmlAttributes))
}

Eindeutig eine Verknüpfung aber ist es eine bastardisierung oder ist es ok, es zu tun?

InformationsquelleAutor Mr Grok | 2009-03-25
Schreibe einen Kommentar