Как бы вы зарегистрировали разные экземпляры IDbConnectionFactory в Funq, а затем обращались к ним непосредственно в ваших сервисах? Здесь как-то вступают в игру именованные экземпляры?
Это лучший подход при использовании разных баз данных в разных сервисах?
Спасибо!
РЕДАКТИРОВАТЬ:
Пример;). Я мог бы уйти отсюда, потому что я новичок в IoC, но скажем, например, у меня есть 2 отдельных соединения с базой данных, которые я хотел бы внедрить. В ServiceStack это делается в файле Global.asax.
container.Register(c =>
new OrmLiteConnectionFactory(@"Connection String 1", SqlServerOrmLiteDialectProvider.Instance));
container.Register(c =>
new OrmLiteConnectionFactory(@"Connection String 2", SqlServerOrmLiteDialectProvider.Instance));
Оба они, кажется, введены хонки дори.
Затем они автоматически доступны на стороне службы через что-то вроде этого:
public IDbConnectionFactory DbFactory { get; set; }
В этом случае мне кажется, что я получил первый зарегистрированный. Как я могу получить доступ к конкретному на стороне сервиса? Надеюсь, это проясняет ситуацию.
Вот полноценный пример из ServiceStack.Examples, в котором используется только 1 IDbConnectionFactory: Остальные фильмы