title: WCF Client Instantiation
body: <p>I have a mvc controller class that uses a WCF service(WSHttpBinding), sometimes multiple calls within one http request, and want to know how expensive it is to create a client for that service.  Is it ok to create an instance of the client for every call or should I create a member variable in the class?</p>
  
  <pre><code>public class RingbacksController : Controller
  {
      private void LoadContactsIntoViewData(int page)
      {
                  RingbackServiceClient client = new RingbackServiceClient();
          ...
          client.Close();
      }
  
      private void LoadGroupsIntoViewData(int page)
      {
                  RingbackServiceClient client = new RingbackServiceClient();
          ...
          client.Close();
      }
  }
  </code></pre>
  
  <p>or</p>
  
  <pre><code>public class RingbacksController : Controller
  {
      private RingbackServiceClient client = new RingbackServiceClient();
  
      private void LoadContactsIntoViewData(int page)
          {
          ...
          client.Close();
      }
  
      private void LoadGroupsIntoViewData(int page)
      {
          ...
          client.Close();
      }
  }
  </code></pre>