У меня есть следующая конфигурация StructureMap (только часть для простоты):
ObjectFactory.Configure(x =>
{
x.For<ISession>().HybridHttpOrThreadLocalScoped().AddInstances(i =>
{
i.ConstructedBy(c => c.GetInstance<ISessionFactory>("oraclesessionfactory").OpenSession()).Named("oraclesession");
i.ConstructedBy(c => c.GetInstance<ISessionFactory>("mssqlsessionfactory").OpenSession()).Named("mssqlsession");
});
x.For<ILogRepo>().Use(c => new LogRepo(c.GetInstance<ISession>("oraclesession")));
x.For<INamespaceRepo>().Use(c => new NamespaceRepo(c.GetInstance<ISession>("mssqlsession")));
});
Я пытаюсь убедиться, что 2 репозитория получат определенную ISession, соответствующую их потребностям, и вышеуказанная конфигурация будет работать нормально (пока):
Однако я пока не очень хардкор с STM, поэтому мой вопрос довольно прост.
У кого-нибудь есть предложения относительно того, как это можно сделать более читабельным или написать по-другому?