Это работает, но я должен был проверить образ жизни PerWebRequest вместо Undefined. Возможно, это изменение в поведении, так как ваш ответ был опубликован несколько лет назад. Таким образом, условие становится следующим: if (model.LifestyleType == Castle.Core.LifestyleType.PerWebRequest). Спасибо !

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

Пока все хорошо, проблема начинается, когда компонент имеет образ жизни PerWebRequest в своем установщике, сначала он жаловался на HttpContext.Current имеет значение null, решив проблему с созданием поддельного контекста в тестовой настройке. У меня теперь есть это исключение в nunit контрольная работа

System.Exception: похоже, вы забыли зарегистрировать http-модуль Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule Добавить '' в раздел на вашем web.config. Если вы используете IIS7 в интегрированном режиме, вам нужно добавить его в раздел

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

И то же самое произойдет, если я проведу какие-либо интеграционные тесты с этим компонентом вне реального веб-запроса, есть ли способ заставить это работать или действительно смоделировать веб-запрос, чтобы можно было запустить эти тесты?

Транки заранее

Фер

Ответы на вопрос(1)

Ваш ответ на вопрос