StructureMap и элементы, кэшированные HttpContext при модульном тестировании - PullRequest
1 голос
/ 20 октября 2011

Мы используем StructureMap для кэширования класса с помощью InstanceScope.HttpContext. При модульном тестировании контроллера, который зависит от этого типа, в StructureMap выдается исключение нулевой ссылки, которое, по-видимому, указывает на то, что он пытается получить доступ к статическому текущему HttpContext (а не к оболочкам MVC).

Как мы можем полностью настроить HttpContext.Current (имея декомпилированную карту структуры, кажется, отсюда и ошибка), чтобы иметь действительный контекст, который будет корректно работать со структурой карты?

Ответы [ 2 ]

2 голосов
/ 21 октября 2011

Это известная ошибка

Просто внедрите исправление и скомпилируйте.

0 голосов
/ 20 октября 2011

Вы пробовали / Вы можете использовать:

containter.For<ICupCakeService>().HybridHttpOrThreadLocalScoped().Use<MyCupCakeService>();

... Который будет использовать хранилище HttpContext, если оно существует, в противном случае использовать хранилище ThreadLocal.

Подробнее: StructureMap - Scoping and Lifecycle Management

...