protected void DoAction(BaseHandler innerCallback, string action, ParameterList qry = null, ParameterList data = null) { this.innerCallback = innerCallback; StringBuilder sb = new StringBuilder(connection.BaseUrl); sb.Append(action); sb.Append("?"); if (qry != null) sb.Append(qry.BuildQueryString()); string url = sb.ToString(); this.url = url; if (data != null) client.UploadStringAsync(new Uri(url), data.BuildQueryString()); else client.DownloadStringAsync(new Uri(url)); }