working update tag sintaxis section scripts not net mvc from asp asp.net-mvc razor

asp.net-mvc - update - tag helpers asp net core 2



¿Cuándo deberíamos usar Html Helpers, Razor Helpers o Parcial Views? (1)

Los HTML Helpers son para componentes reutilizables. por ejemplo, WebGrid, Pager, etc. Estos se distribuyen como conjuntos y no dependen de Razor. Elija esto si:

  • La funcionalidad es verdaderamente reutilizable y aplicable a cualquier aplicación
  • No quieres que las personas lo modifiquen, quieren versionarlo

Las vistas parciales son una forma de dividir vistas grandes en partes más pequeñas para mantener las cosas más manejables. También son útiles para la reutilización que es específica para su aplicación. Estos están ubicados por el motor de visualización, por lo que puede tener el mismo parcial definido en diferentes lugares (por ejemplo, Vistas / Compartido), lo que le permite personalizar por controlador, área o modo de visualización. Elija esto si:

  • La funcionalidad es específica de la aplicación
  • Quiere personalizar por controlador, área o modo de visualización

Los Ayudantes locales son una forma de ejecutar la misma plantilla muchas veces, sin tener que repetirse. También puede usarlo para dividir las vistas en partes para evitar el anidamiento profundo, pero manteniendo todo en el mismo archivo. Elija esto si:

  • La funcionalidad es específica de la vista

Los helpers de aplicación (en App_Code) son una mezcla entre helpers locales y helpers HTML. Elija esto si:

  • Prefiere Razor sobre TagBuilder
  • No importa distribuir archivos en lugar de ensamblajes
  • Prefiere la sintaxis de llamada de método seguro de tipo en lugar de @Html.Partial(name)

Estas tres características diferentes existen en el motor de visualización Razor y se pueden usar para lograr resultados similares. Al final, los tres simplemente renderizan fragmentos de código HTML, pero la forma de definirlos y usarlos es bastante diferente. Yo sé eso:

Html Helpers se crean como métodos de extensión para la clase HtmlHelper . Con frecuencia usan la clase TagBuilder para generar algo de HTML y siempre deben devolver un IHtmlString .

Razor Helpers (métodos de @helper ) se puede definir localmente (en el mismo archivo razor) o globalmente (en el directorio App_Code ). Son pequeños fragmentos de código HTML que se pueden reutilizar exclusivamente en archivos Razor.

Y, por último, las Vistas parciales son solo archivos de vista normal que se pueden incluir en otros archivos de vista utilizando el ayudante @Html.Partial .

Mi pregunta es:

¿Hay un escenario específico para cada una de estas características? ¿O se trata de diferentes sabores para lograr el mismo resultado?