C# HTTPModule Не удалось загрузить тип CGI-запроса
Попытка использовать HTTPModule, который я написал в совместимом проекте класса C#, для регистрации значений запросов и расширения сторонней корзины покупок CGI. Мой модуль прекрасно работает с запросами asp,asp.net,jpg и html, но как только я запрашиваю store.cgi, я получаю следующую ошибку. Нужно ли делать что-то особенное в IIS7 или HTTPModule не работает с исполняемыми файлами CGI, работающими в CGI-BIN?
Ошибка сервера в приложении /cgi-bin.
Не удалось загрузить тип 'IISWatcher.WatchRequests'. Описание: во время выполнения текущего веб-запроса произошло необработанное исключение. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.
Сведения об исключении: System.Web.HttpException: не удалось загрузить тип "IISWatcher.WatchRequests".
Исходный код:
используя Систему; using System.Collections.Generic; использование System.Text; использование System.Web; использование System.Messaging; пространство имен IISWatcher {открытый класс WatchRequests: IHttpModule { public void Init(System.Web.HttpApplication app) { app.BeginRequest += new EventHandler(app_BeginRequest); app.EndRequest += новый EventHandler(app_EndRequest); } void app_EndRequest(отправитель объекта, EventArgs e) { //HttpApplication app = (HttpApplication)sender; } void app_BeginRequest(отправитель объекта, EventArgs e) { string strReturn = "\r\n"; HttpApplication app = (HttpApplication) отправитель; string strAddress = app.Request.UserHostAddress; строка strUrl = app.Request.Url.AbsoluteUri; string strQS = app.Request.QueryString.ToString(); RequestInfo ri = new RequestInfo(); System.Diagnostics.EventLog.WriteEntry("HttpModule", "IpAddress: " + strAddress + strReturn + "URL:" + strUrl); System.Messaging.MessageQueue msq = new MessageQueue(@".\ Private$\HttpModuleQueue"); ri.AbsoluteUri = strUrl; ri.IPAddress = strAddress; ri.QueryString = strQS; msq.Send(п); } public void Dispose() { } } открытый класс RequestInfo {открытая строка IPAddress; публичная строка AbsoluteUri; публичная строка QueryString; }}
Web.config для IIS7:
...................