При переходе на MVC, а теперь и IIS7, у нас начались проблемы с тем, что наш HTTP-модуль, который открывает и закрывает ISession, вызывался при каждом запросе (статические файлы и т. Д.).Я хотел избежать полного переписывания управления сеансами NH, поэтому я реализовал этот код в своем модуле, чтобы отфильтровать все, кроме запросов, поступающих в mvchandler:
void context_PreRequestHandlerExecute(object sender, System.EventArgs e)
{
HttpContext context = ((HttpApplication)sender).Context;
Type mvcht = typeof(System.Web.Mvc.MvcHandler);
if (context.Handler != null && context.Handler.GetType().IsAssignableFrom(mvcht))
{
// Code Here
}
}
Мой вопрос: я никогда не использовалэто событие в трубопроводе запроса.Итак, есть ли скрытые подводные камни в этом?Кроме того, я смотрю на проблему производительности при выполнении этой проверки для каждого запроса?Я еще ничего не заметил, но это новое и все еще небольшое приложение.