Webactivator не работает на IIS 7 - PullRequest
       20

Webactivator не работает на IIS 7

6 голосов
/ 10 октября 2011

У меня есть несколько веб-приложений, которые используют пакеты, использующие WebActivator.На моей локальной машине с IIS 7.5 Express все работает нормально, тестирую ли я в конфигурациях Release или Debug.Однако на моей рабочей машине с IIS 7.5 WebActivator фактически не работает, поэтому все модули не загружаются, и мне нужно добавить код обратно в файл Global.asax.cs.

Яозадачен тем, где вообще начать искать - гуглил и искал StackOverflow, но ни с кем не сталкивался с подобными проблемами.Есть что-то явное, что нужно настроить, чтобы оно могло работать?

Редактировать - Добавлен быстрый пример активатора, который регистрируется в Windows.Содержимое функции при добавлении в файл Global.asax.cs прекрасно работает на рабочем сервере, но никогда не регистрируется с помощью активатора.

using System.Web.Mvc;
using System;

[assembly: WebActivator.PreApplicationStartMethod(typeof(Admin.App_Start.WebActivatorTestStart), "Start")]

namespace Admin.App_Start
{
    public static class WebActivatorTestStart {
        public static void Start() {

            System.Diagnostics.EventLog log = new System.Diagnostics.EventLog();
            log.Source = ".NET Runtime";
            log.WriteEntry("WebActivator Start", System.Diagnostics.EventLogEntryType.Information);

        }
    }
}

1 Ответ

0 голосов
/ 04 апреля 2012

Ну, я не могу точно сказать, что я сделал, чтобы исправить положение, но сейчас оно работает.

Немного истории - я управляю несколькими различными большими приложениями, использующими некоторые общие библиотеки. У меня есть моя общая веб-библиотека, и там я использовал настройку IOC с Ninject и WebActivator. В этой базовой библиотеке была папка App_Start. Может быть, это было причиной? Не знаю. Никогда не получал WebActivator для работы с этой настройкой, поэтому я просто использовал NinjectHttpApplication для обработки регистрации и запуска. Однако базовая библиотека все еще зависела от WebActivator (просто нет папки App_Start).

Итак, сейчас я работаю над рефакторингом некоторых приложений и базовых библиотек - очищаю кучу запаха кода за последние несколько месяцев. Одним из шагов было перенести весь IoC в настоящее веб-приложение - сделать базовые библиотеки менее монолитными. Базовая библиотека больше не зависит от WebActivator.

И теперь это работает. Я также внес полсотни других небольших изменений в базовую библиотеку, поэтому я прошу прощения у других за то, что не стал более систематическим.

...