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:

...................

0 ответов

Другие вопросы по тегам