У меня есть служба WCF, которая будет вызываться из разных клиентов.
Внутренне служба WCF использует ISomething.Существует несколько реализаций этого интерфейса, и мне нужно, чтобы некоторые клиенты использовали одну реализацию, а другие клиенты - другую реализацию.
Кроме того, я использую Unity и контейнер IoC.Как правило, я бы настраивал собственную фабрику, чтобы позволить разрешать саму службу wcf вместе с ее графом зависимостей, но если у меня есть несколько реализаций зависимости, я не думаю, что смогу пойти с этим подходом и должен был бы прибегнуть к разрешениюISomething внутри службы (эффективно использующий Unity в качестве локатора службы), который не идеален.
Поэтому мне нужно решить
(1), как указать, какая реализация ISomething необходима клиенту(например, используйте заголовок, передавайте строку реализации в каждом методе, размещайте несколько конечных точек и т. д.)
(2) как подходит Unity?