tag route net data asp all asp.net themes

route - Temas de ASP.NET-¿Deben ser utilizados?



tag helpers asp net core (3)

En mi humilde opinión, los temas de asp.net son absolutamente inútiles.

intente implementar la reescritura de URL con una aplicación que use temas y vea cómo se rompen de inmediato

Básicamente, puede lograr lo mismo escribiendo pocas líneas de código en asp.net y en varias carpetas css. Aún no he encontrado ningún desarrollador / empresa que haya estado usando temas.

cuando se lanzó asp.net 2.0, hubo una gran exageración en torno a los temas, pero mi opinión personal es que simplemente no vale la pena :-)

Había estado leyendo sobre temas en mi libro ASP.NET y pensé que podría ser una solución muy útil, luego encontré algunos problemas.

  • El tema recoge todos los archivos CSS de la carpeta.
  • Si desea utilizar los estilos de restablecimiento (donde el orden es importante), el orden de las hojas de estilo importadas no está garantizado.
  • Su página maestra no indicaría explícitamente qué estilo se está utilizando, solo la página renderizada puede decirle que a menos que se adentre en su web.config
  • Los controles web de estilo que usan el archivo de tema son ... bueno ... ¿estúpido? Simplemente puede hacer esto en su hoja de estilo. El control granular debe estar en el nivel HTML, ¿no es así?
  • ¿Cómo se especifican las hojas de estilo de impresión sin tener todos los estilos en una sola hoja de estilo?

Me pregunto si realmente vale la pena usarlos. ¿Hay algún beneficio? ¿Hay algún sitio importante que los use?

EDITAR

Sólo para aclarar el último punto de Slolife. Si tuviera dos hojas de estilo, una llamada print.css y otra llamada main.css y usara temas de ASP.NET, ¿cómo sabría que print.css era una hoja de estilo de impresión? En HTML normal, utiliza el tipo de medio en la etiqueta en sí (es decir, <link rel= ...> ) pero los temas no lo sabrían, por lo que solo se incluiría como una hoja de estilo normal.


Me gusta usar temas, pero como Raj señaló en su respuesta, la reescritura de URL puede causar problemas. Mi búsqueda de algunas soluciones para eso es lo que me llevó a tu pregunta. Pero voy a añadir mis opiniones de todos modos.

Abordaré algunas de sus viñetas desde arriba en cuanto a por qué creo que los temas son buenos:

- El tema recoge todos los archivos CSS de la carpeta.

Supongo que está buscando aplicar solo ciertos archivos de hojas de estilo a ciertas páginas. Sí, los temas toman el enfoque de la escopeta aquí, así que eso es un problema. Pero no tiene que poner todas las hojas de estilo en la carpeta de temas. Ponga sus especializados fuera de él y no se incluirán automáticamente. Pero creo que es una buena característica tener los comunes / de todo el sitio incluidos automáticamente.

- Si desea utilizar estilos de restablecimiento (donde el ordenamiento es importante), el orden de las hojas de estilo importadas no está garantizado.

Creo que puede garantizar el orden por la forma en que nombra los archivos, por lo que están ordenados numéricamente y alfabéticamente. Tal vez no sea una solución elegante, pero tampoco horrible.

Personalmente, tengo un paso de compilación que combina y comprime todos los archivos * .css en mi carpeta de temas en un solo archivo style.css, y como controlo ese paso de compilación y el orden en que se combinan los archivos, no es así. me afecta.

- Su página maestra no indicaría explícitamente qué estilo se está utilizando, solo la página renderizada puede indicarle que, a menos que profundice en su web.config

Puede cambiar el tema a través del código y en la directiva <% @ Page

- Los controles web de estilo que utilizan el archivo de tema son ... bueno ... ¿estúpido? Simplemente puede hacer esto en su hoja de estilo. El control granular debe estar en el nivel HTML, ¿no es así?

Estoy de acuerdo en que la aplicación de atributos de estilo a los controles a través del tema no parece ser una buena práctica. Pero me encanta el hecho de que puedo definir las máscaras de imagen en los archivos de máscara del tema y no tengo que cortar y pegar Ancho, Altura, Texto Alternativo, Alinear atributos para imágenes comunes en las que uso muchos lugares en todo el sitio. Y si alguna vez cambio una de esas imágenes, puedo arreglar los atributos en un solo lugar, en lugar de hacerlo por todas partes. También puedo crear controles personalizados con una lista determinada de clases de CSS aplicadas, lo que me parece útil.

- ¿Cómo se especifican las hojas de estilo de impresión sin tener todos los estilos en una sola hoja de estilo?

Tengo un archivo Print.css que comienza con @media print y que define los estilos de impresión para mi sitio. ¿Por qué necesitas ponerlos en una hoja de estilo?


Use temas para cambiar los atributos de control SOLAMENTE. Fueron mal diseñados para trabajar con css.