WCF / Silverlight: зачем использовать ChannelFactory вместо клиента? - PullRequest
2 голосов
/ 03 февраля 2011

В унаследованном проекте, который использует ChannelFactory вместо клиента для вызовов WCF.Зачем вам это делать?

Кроме того, безопасно ли кэшировать результат вызова ChannelFactory.CreateChannel () или вам следует каждый раз создавать новый?

1 Ответ

1 голос
/ 03 февраля 2011

Создание клиента WCF представляет собой двухэтапный процесс:

  • создание фабрики каналов
  • с использованием этой фабрики каналов, создание фактического канала

Шаг 1 довольно дорогой с точки зрения вычислительной мощности и скорости - поэтому, если вы можете создать фабрику каналов, а затем кэшировать где-нибудь, вы можете сэкономить немного ресурсов и создать канал, при котором фабрика кэшированных каналов будет быстрее, чем ре-создание всего клиента все время.

Так что в этой настройке я бы попытался кэшировать ChannelFactory, если вы можете - и заново создавать канал из этой фабрики каждый раз, когда вам это нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...