2012-03-13 12 views
6

El problema es el siguiente: Estamos tratando de implementar un esquema de control de versiones para nuestro CSS y donde hemos accedido a CSS a través de href (como \ themes \ ssss \ abc.css) agregamos este enlace con un número de compilación programáticamente (como \ themes \ ssss \ abc.css? 1011) para que con la compilación nueva el cliente obtenga los últimos archivos css.¿Cómo descargar la última versión de los archivos CSS de un tema?

El problema está en los temas. Por ej. en App_Themes creamos una carpeta de temas con el nombre MyTheme; ahora, donde sea que se use este tema, necesitamos que el CSS para este tema sea reemplazado por los últimos archivos de compilación. ¿Como hacer eso?

+0

¿Se puede utilizar la reasignación de URL de IIS? –

+0

¿Puedes elaborar? –

+1

Si tiene una URL genérica como /MySyste/Themes/Current.css, puede volverse a mapear en /MySite/Themes/12345/Current.css, supongo que se puede hacer reescribiendo la URL como lo hacemos, por ejemplo, con MVC, más detalles: http://msdn.microsoft.com/en-us/library/ms972974.aspx –

Respuesta

0

Agregue algo de hash extra a su url de css ("#somethingnew"). También puedes usar herramientas como SquishIt. También puede minimizar los archivos css/js.

+0

Es el tema que debe manejarse y no un archivo css individual. –

+0

Lo siento, mi "respuesta" no fue útil. Puede resolver su solución inicializando su propio VirtualPathProvider y agregar abc_123.css en lugar de abc.css y anulando el método GetFile devolverá cualquier archivo que desee (el último abc.css real en este caso). Funcionará, pero no estoy seguro de que sea bueno usar esta opción pesada para tal escenario –

1

¿por qué no creas una nueva carpeta de temas en cada build/deploy?

Algo similar a \ themes \ ssss-1011 \ abc.css.

+0

Eso no es factible debido a los pasos de implementación, etc. involucrados ... –

Cuestiones relacionadas