Pregunta

aparecerá HtmlHelper existentes trabajan con la maquinilla de afeitar? Si es así, ¿Razor cambiar nada de bien el diseño o el uso de HtmlHelper?

THX

¿Fue útil?

Solución

Sí, ayudantes existentes funciona perfectamente bien con la maquinilla de afeitar. Por ejemplo:

@Html.ActionLink("foo bar", "foo")

Lo que cambia es la maquinilla de afeitar que ahora tiene la posibilidad de definir ayudantes en línea como esta:

@helper FooBar(string foo)
{
    <div>Hello @foo</div>
}

Y el uso de esta manera:

@FooBar("World")

En lo que a clásico ayudantes HTML se refiere, la maquinilla de afeitar no cambia nada, es sólo un motor de vista de forma continua escribiendo sus ayudantes la que siempre ha hecho:

public static class HtmlExtensions
{
    public static MvcHtmlString FooBar(this HtmlHelper htmlHelper, string value)
    {
        var builder = new TagBuilder("div");
        div.SetInnerText(value);
        return MvcHtmlString.Create(div.ToString());
    }
}

Y el uso de la maquinilla de afeitar:

@Html.FooBar("some value")

Otros consejos

Razor realiza HTML codificación por defecto.

Así que si alguno de sus HtmlHelper MVC2 emiten marcado, que podrían no funcionar si están regresando String en lugar de MvcHtmlString.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top