powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF:Как оптимально работать с прокси?
1 сообщений из 1, страница 1 из 1
WCF:Как оптимально работать с прокси?
    #36670696
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Работаю с асинхронными методами
Все время приходится делать так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
      try
      {
        Proxy.BeginMethod1(..., OnEndMethod1, Proxy);
      }
      catch (FaultException ex)
      {
        MessageBox.Show(ex.Message);
      }
      catch (CommunicationException cex)
      {
        MessageBox.Show(cex.InnerException.Message);
        Abort();
        ReCreateProxy();
      }
      catch (Exception ex)
      {
        Proxy.Close();
        MessageBox.Show(ex.Message);
        ReCreateProxy();
      }

затем идет обработчик OnEndMethod1

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
   private void OnEndMethod1(IAsyncResult ar)
    {
      SendOrPostCallback cb =
        delegate
        {
          if (((ServiceClient)ar.AsyncState).State == CommunicationState.Opened)
          {
            try
            {
              ... = Proxy.EndMethod1(ar);
            }
            catch (FaultException ex)
            {
              MessageBox.Show(ex.Reason.ToString());
            }
            catch (CommunicationException cex)
            {
              MessageBox.Show(cex.InnerException.Message);
              Proxy.Abort();
              ReCreateProxy();
            }
            catch (Exception ex)
            {
              Proxy.Close();
              MessageBox.Show(ex.Message);
              ReCreateProxy();
            }
          }
          ar.AsyncWaitHandle.Close();
        };
      var Sc = SynchronizationContext.Current;
      Sc.Send(cb, null);
    }

такая обработка каждого вызова задалбывает
нет ли гуманного способа делать эти вызовы с автоматической рекреацией прокси в случае его анормального завершения соединения и обработкой ошибок?

Поделитесь опытом пожалуйста
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF:Как оптимально работать с прокси?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]