В наших проектах мы помечаем скрипты и CSS как ресурсы для класса, а затем регистрируем их в течение жизненного цикла страницы, обычно в PreRender ().
Например:
// Css
[assembly: WebResource("Assembly.Class.MyClass.css", "text/css")]
// Javascript
[assembly: WebResource("Assembly.Class.MyClass.js", "text/javascript")]
namespace OurNamespace
{
public class MyClass...
Затем мы устанавливаем свойства каждого из наших сценариев и файлов CSS в качестве встроенных ресурсов.
Этот подход позволяет вам поддерживать отдельные сценарии и ориентировать их на отдельные компоненты пользовательского интерфейса. Вы можете зарегистрировать одни и те же ресурсы для нескольких классов, и тогда ScriptManager позаботится о том, чтобы на странице отображались нужные ресурсы.
Затем мы написали класс на уровне обработчика HTTP, который обрабатывает сжатие всех ресурсов CSS в один файл перед его потоковой передачей, чтобы убедиться, что мы не достигли предела в 32 файла CSS для IE6. Он также удаляет пробелы, комментарии и т. Д. Из наших сценариев для оптимизации вывода JavaScript.