Я пытаюсь использовать StructureMap для инъекции зависимостей в концентратор SignalR.Использование StructureMap для инъекции зависимостей SignalR 2.0.1
Многие источники в Интернете говорят, что это должно быть сделано, как в этом ответе: How do you Resolve signalR v2.0 with StructureMap v2.6. Я попробовал, и получил его на работу - по крайней мере, для первого действия после первой pageload.
Когда я пытаюсь выйти из HTML-страницы, содержащей SignalR-JS-Code (или перезагрузить страницу), или когда я использую одну из функций, определенных в моем хабе, второй раз, я получаю это StructureMapException: You cannot use the HttpContextLifecycle outside of a web request. Try the HybridLifecycle instead.
в public IHub Create(HubDescriptor descriptor)
функция моего HubActivator
Я уже пробовал это, изменив мое сканирование во время самозагрузки:
container.Configure(x =>
{
x.Scan(scan =>
{
scan.TheCallingAssembly();
scan.AssembliesFromApplicationBaseDirectory(GetFilteredAssemblies);
scan.WithDefaultConventions().OnAddedPluginTypes(t => t.LifecycleIs(InstanceScope.Hybrid));
scan.LookForRegistries();
scan.AddAllTypesOf<MyProject.Data.Common.IEntity>();
scan.AddAllTypesOf<IMappedEntity>();
scan.AddAllTypesOf<IDatabaseInitializer>();
scan.AddAllTypesOf<IBootstrapMember>();
scan.AddAllTypesOf<IMembership>();
});
});
Но это не помогло.
Что мне нужно изменить (в SignalR или StructureMap), чтобы исправить это исключение?
Устранена ошибка с помощью 'Web API'. Благодарю. –