Сцепление в AppInitialize с сервисом WCF

У меня есть проблемы с моим сервисом WCF. Я должен сделать виндзорскую контейнерную инжекцию пред application_start и заметил, что могу использовать метод AppInitialise. Это работает над отладкой Visual Studio, но когда я развертываюсь к IIS, код не становится запущенным.. Я инициализировал класс следующим образом

public static class Class1
{
    public static void AppInitialize()
    {
        IWindsorContainer container;
        container = new WindsorContainer("windsor.xml");
        container.AddFacility<WcfFacility>();
        container.Resolve<ProfileLookUpService>();
    }
}

Есть ли любая специальная задача, которую я должен сделать, чтобы заставить это работать над IIS. Я использую версию 6.

Спасибо!

6
задан abatishchev 7 December 2012 в 07:56
поделиться

1 ответ

Что ж, вам нужно знать о нескольких вещах:

  • служба WCF может размещаться самостоятельно - она ​​не всегда размещается в IIS, поэтому не не полагаться на специфичный для IIS механизм, по возможности

  • служба WCF на стороне сервера в основном состоит из ServiceHost (или его настраиваемого потомка), который инициализирует среду выполнения WCF, и он будет создавать экземпляры классов обслуживания по мере необходимости для обработки запросов

. Так что это действительно зависит от того, куда вы хотите внедрить свой материал - мое чутье подсказывает мне, что вы, вероятно, заинтересованы в возможности создания собственного потомка ServiceHost, и подключитесь к некоторым из его методов и событий для обработки вашей инициализации.

Ознакомьтесь с некоторыми действительно хорошими статьями и сообщениями в блоге по этой теме здесь:

4
ответ дан 17 December 2019 в 18:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: