Советы для WCF с WP7 - PullRequest
       5

Советы для WCF с WP7

0 голосов
/ 11 января 2012

У меня есть приложение WP7, которому для получения данных из службы WCF требуется большинство страниц. В основном, чтобы начать использовать WCF, мне нужно сделать следующее: -

ServiceClient client = new ServiceClient();

после финиша ...

client.close();

Я не думаю, что правильно создавать объект ServiceClient на каждой странице, но только в App (). Итак, мне интересно, когда и где правильно называть client.close() в этом случае?

Ответы [ 2 ]

1 голос
/ 11 января 2012

Это на самом деле зависит от вас, именно вам нужно принять решение о политике управления экземплярами вашего клиента и услуг. Это проблема дизайна всего решения, которое вы пытаетесь достичь. Существует 3 политики управления экземплярами служб:

  • За услугу звонка
  • За сеанс службы
  • Singleton Services

Но то, о чем вы говорите, на самом деле использует синглтон вашего клиента. Я хотел бы предложить вам избежать этого. Когда бы ни было возможно, придерживайтесь управления экземплярами Per Call, что вы и делаете в данный момент. Попробуйте закрыть соединение со службой как можно скорее, если только у вас нет веских оснований действовать по-другому.

1 голос
/ 11 января 2012

В идеале, вы должны закрыть клиента, как только закончите с ним.Это освобождает соединение, которое вы сделали с сервером.Если у вас есть параллельные или синхронные (один за другим, непрерывные) вызовы, вы можете использовать один и тот же объект, в противном случае закрыть соединение, как только закончите с ним.

...