Jak mogę przekazać kilka metod (z parametrami) JAKO parametr?

Załóżmy, że mam następujący kod WCF:

  try
  {
       ServiceClient proxy = new ServiceClient();
       proxy.ClientCredentials.UserName.UserName = "user";
       proxy.ClientCredentials.UserName.Password = "password";
       proxy.GetData(2);
       if (proxy.State = CommunicationState.Opened)
       {
           proxy.GetData("data");
       }
       proxy.Close();
  }
  catch (FaultException ex)
  {
      // handle the exception      
  }

A ponieważ zauważam, że try ... catch i inna logika są powtarzalne, nie wspominając już o tym, że konfiguracja wywołania WCF jest droga, dlatego chcę wysłać do tej funkcji wiele „metod i parametrów”.

W gruncie rzeczy przejśćGetData(2) iGetData("data") jako tablica metod, a wyniki zwracają się asynchronicznie lub synchronicznie.

Jak mam to osiągnąć?

Przypuszczam, że mógłbym mieć dwa obiekty „ref” do obsługi wyników [] i wspólną blokadę wyników []. Nie jestem jednak pewien, jak przekazać „metody z parametrami” jako parametr do innej funkcji.

Być może innym sposobem spojrzenia na to może być tablica wskaźników funkcji do tej samej funkcji z różnymi parametrami.

Czy ktoś może popchnąć mnie we właściwy sposób?

Więcej informacji:

Zadaję to pytaniedzięki czemu mogę zoptymalizować to podejście do obsługi wyjątków i ponownych prób WCF ale nie muszę zawsze otwierać / zamykać klienta po każdym połączeniu.

questionAnswers(1)

yourAnswerToTheQuestion