У меня есть служба WCF, которая поддерживает около 10 контрактов, мы поддерживали клиента со всеми бизнес-правилами, характерными для этого клиента, теперь у нас есть другой клиент, который будет использовать точно такие же контракты (поэтому мы не можем их изменить), они будет вызывать службу точно так же, как предыдущий клиент звонил сейчас, единственный способ, которым мы можем различить двух клиентов, - это один из входных параметров. Основываясь на этом входном параметре, мы должны использовать немного другую бизнес-логику - логика для обоих клиентов будет одинаковой в 50% случаев, когда у остальных будет другая логика (для уровней Business / DAL). Я не хочу использовать оператор if в каждой из реализаций контракта, чтобы дифференцировать и перенаправлять логику, а также то, что, если приходит другой клиент. Существует ли чистый способ обработки ситуации, подобной этой. Я использую фреймворк 3.5. Как я уже сказал, я не могу изменить ни один из контрактов (контракт на обслуживание / передачу данных) или текущую инфраструктуру вызова сервиса для нового клиента. Спасибо