public static void GetFileFromSrv(AjaxRequest request, String appendUrlParams) { Action<Exception> doOnErr = e => { var response = new AjaxResponse { Ex = EBioException.CreateIfNotEBio(e), Success = false }; if (request.Callback != null) request.Callback(null, new AjaxResponseEventArgs { Request = request, Response = response }); }; try { var cli = new WebClient(); cli.OpenReadCompleted += (sender, e) => { if (e.Error == null) { if (request.Callback != null) { var response = new AjaxResponse { Success = true }; var a = new AjaxResponseEventArgs { Request = request, Response = response, Stream = new MemoryStream() }; e.Result.CopyTo(a.Stream); e.Result.Close(); request.Callback(sender, a); } } else { doOnErr(e.Error); } }; var paramsToPost = PrepareRequestParams(request); var urlParams = String.IsNullOrEmpty(appendUrlParams) ? String.Empty : "&" + appendUrlParams; var uri = new Uri(request.URL + "?" + paramsToPost + urlParams, UriKind.Relative); cli.OpenReadAsync(uri); } catch (Exception ex) { doOnErr(ex); } }
private void _processCallback(AjaxRequestDelegate callback, Object sender, AjaxResponseEventArgs args) { //Utl.UiThreadInvoke(() => { if (callback != null) callback(sender, args); this._processQueue(); //}); }