0

Ceci est mon StructureMap bootstrapping:StructureMap CacheBy InstanceScope.HttpSession ne fonctionne pas

ObjectFactory.Initialize(factory => 
{ 
    //Business Conversation is per session 
    factory.ForRequestedType<IConversation>(). 
    TheDefaultIsConcreteType<Conversation>(). 
     CacheBy(InstanceScope.HttpSession); 

    //Session Factory is life time 
    factory.ForRequestedType<INHibernateSessionManager>(). 
    TheDefaultIsConcreteType<NHibernateSessionManager>(). 
     CacheBy(InstanceScope.Singleton); 
}); 

var conversation = ObjectFactory.GetInstance<IConversation>(); 

Quand j'ai ma conversation configuré pour utiliser .CacheBy (InstanceScope.HttpSession), je me référence d'objet non trouvé, si je don n'utilisez pas CacheBy cela fonctionne très bien. Cela doit aller dans la session, je ne suis pas vraiment sûr pourquoi cela ne fonctionne pas.

que je fais quelque chose de mal ou ne ce semble être un bogue dans StructureMap?

Répondre

3

Pour répondre à ma propre question, oui cela est bogue dans StructureMap. Le bug est corrigé dans le tronc ou sera corrigé dans toute version binaire de 2.5.3 ou ultérieure.