Оба атрибута доступны только для классов (и, следовательно, тестов), где они принадлежат.
TestInitialize
выполняется перед каждым тестом, который объявлен в том же классе, где объявлен атрибут.
ClassInitialize
выполняется только при инициализации класса, в котором объявлен атрибут. Другими словами, он не будет работать для каждого класса. Только для класса, который содержит метод ClassInitialize
.
Если вы хотите использовать метод, который будет запускаться один раз перед началом всех тестов или инициализации классов, используйте AssemblyInitialize
.
Я использовал mod_rewrite на сайтах, которые получают миллионы/хиты/месяц без любых значительных проблем производительности. Действительно необходимо знать, какие перезаписи применяются сначала в зависимости от правил.
Используя mod_rewrite, скорее всего, быстрее, чем парсинг URL с Вашим текущим языком.
, Если Вы действительно волнуетесь по поводу производительности, не используйте .htaccess
файлы, те являются медленными. Поместите все свои правила перезаписи в Вашу конфигурацию Apache, которая только читается однажды на запуске. .htaccess
файлы повторно анализируются по каждому запросу, наряду с каждый .htaccess
файл в родительских папках.
Отозваться эхом, что Ryan говорит выше, управляет в .htaccess
, может действительно повредить Ваше время загрузки на оживленном сайте по сравнению с наличием правил в Вашем файле конфигурации. Мы первоначально попробовали это (~60million страницы/месяц), но не продержались очень долго, пока наши серверы не начали курить:)
очевидная оборотная сторона к наличию правил в Вашей конфигурации является Вами, должны перезагрузить конфигурацию каждый раз, когда Вы изменяете свои правила.
последний флаг ("L") полезен для ускорения выполнения Ваших правил, как только Ваши более часто полученные доступ правила находятся к вершине и оценены сначала. Это может сделать обслуживание намного более хитрым, если у Вас есть долгий ряд правил, хотя - я потратил впустую несколько очень расстраивающих часов однажды утром, когда я редактировал на полпути вниз свой список правил и имел то вершина, которая захватывала более, чем предназначенный!
Мы испытали затруднения при нахождении соответствующих сравнительных тестов также и закончили тем, что разработали наш собственный внутренний комплект тестов. Как только мы разобрались в наших правилах, правильно заказанный и в наш Apache conf, мы не нашли большую часть отрицательного влияния производительности.
Если Вы волнуетесь по поводу работы апача, одна вещь рассмотреть, есть ли у Вас много правил перезаписи, должен использовать флаг "пропуска". Это - способ пропустить соответствие на правилах. Так, безотносительно наверху был бы потрачен на соответствие, сохраняется.
Быть осторожным, хотя, я был на проекте, который использовал "пропуск", отмечают много, и он сделал обслуживание болезненным, так как он зависит от порядка, в котором вещи записаны в файле.