title: SignalR 2 StartAsync never returns
body: <p>In the following part of a class, StartAsync never returns.</p>
  
  <p>Any ideas why?  The server appears to be working fine, and works with Javascript clients.  </p>
  
  <p>SignalR client version is v1.0.0-rc1-final</p>
  
  <pre><code>    public HubUtil(string baseUrl) //string clientId
      {
          connection = new HubConnectionBuilder()
              .AddJsonProtocol()
              .WithUrl(baseUrl)  // baseUrl is "https://hostname/hubname"
              .Build();
  
          connection.Closed += Connection_Closed;
          StartIfNeededAsync();
      }
  
      private Task Connection_Closed(Exception arg)
      {
          return StartIfNeededAsync();
      }
  
      public async Task StartIfNeededAsync()
      {
          if (_connectionState == ConnectionState.Connected)
          {
              return;
          }
  
          try
          {
              await connection.StartAsync(); // Never connects
              _connectionState = ConnectionState.Connected;
          }
          catch (Exception ex)
          {
              _connectionState = ConnectionState.Faulted;
              throw;
          }
      }
  </code></pre>
  
  <p>From a basic console app this is how hubutil is called:</p>
  
  <pre><code>    static void Main(string[] args)
      {
          var hub = new HubUtil("https://host/hubname");
          hub.Invoke("checkin", "id", "");
      }
  </code></pre>