// Login user request public static IRestResponse <ServiceResponse> Login(string baseUrl, string username, string password, string cookieName) { #region Login Service Request IRestResponse <ServiceResponse> response = new RestResponse <ServiceResponse>(); if (InternetConnection.IsConnectedToInternet() == true) { try { var restClient = new RestClient(baseUrl); var request = new RestRequest(Method.POST) { Resource = "/Account/Login" }; //Method 1 : Passing parameters in c# object request.AddParameter("Username", username); request.AddParameter("Password", password); #region Other Method to pass JSON Parameters (Working) //Method 2 : Passing parameters in Json body format //request.AddHeader("Content-type", "application/json"); //request.AddJsonBody( // new // { // Username = txtUsername.Text, // Password = txtPassword.Password // }); //Method 3 : Passing parameters in Json object string format //dynamic jsonParameters = new JObject(); //jsonParameters.Username = txtUsername.Text; //jsonParameters.Password = txtPassword.Password; //var parameters = jsonParameters.ToString(); //request.AddParameter("application/json", parameters, ParameterType.RequestBody); #endregion restClient.CookieContainer = new CookieContainer(); response = restClient.Execute <ServiceResponse>(request); if (response.StatusCode == HttpStatusCode.OK && response.ResponseStatus == ResponseStatus.Completed) { SereneRequester.SaveCookie(restClient.CookieContainer, cookieName); } } catch (Exception ex) { response.ErrorMessage = ex.Message; response.ErrorException = ex.InnerException; //MessageBox.Show(ex.Message); } return(response); } else { response.ErrorMessage = "Internet connection not available. Please check connection."; return(response); } #endregion }
// Update row request with fileList public static IRestResponse <SaveResponse> Update <MyRow>(string baseUrl, string resource, SaveRequest <MyRow> saveRequest, List <string> fileList, string cookieName) { #region Update Service Request IRestResponse <SaveResponse> response = new RestResponse <SaveResponse>(); if (InternetConnection.IsConnectedToInternet() == true) { try { var restClient = new RestClient(baseUrl); var request = new RestRequest(Method.POST); request.AddHeader("Content-Type", "application/octet-stream"); request.Resource = resource; request.AddJsonBody(saveRequest); request.RequestFormat = DataFormat.Json; fileList.ForEach(file => { request.AddFile("receipt[receipt_file]", File.ReadAllBytes(file), "Invoice.jpg", "application/octet-stream"); }); CookieContainer rscookie = RestoreCookie(cookieName); //if (rscookie == null) // return response; restClient.CookieContainer = rscookie; response = restClient.Execute <SaveResponse>(request); if (response.StatusCode == HttpStatusCode.OK && response.ResponseStatus == ResponseStatus.Completed) { var jsonResponse = JsonConvert.DeserializeObject <dynamic>(response.Content); //response.Data.EntityId = (object)jsonResponse["EntityId"]; SereneRequester.SaveCookie(restClient.CookieContainer, cookieName); } } catch (Exception ex) { response.ErrorMessage = ex.Message; response.ErrorException = ex.InnerException; //MessageBox.Show(ex.Message); } return(response); } else { response.ErrorMessage = "Internet connection not available. Please check connection."; return(response); } #endregion }
public static IRestResponse <SaveResponse> BulkUpdate <MyRow>(string baseUrl, string resource, List <MyRow> saveList, string cookieName) { #region Create Service Request IRestResponse <SaveResponse> response = new RestResponse <SaveResponse>(); if (InternetConnection.IsConnectedToInternet() == true) { try { var restClient = new RestClient(baseUrl); var request = new RestRequest(Method.POST); var json = JsonConvert.SerializeObject(saveList); request.Resource = resource; request.AddParameter("application/json;charset=utf-8", "{\"Entity\":" + json + "}", ParameterType.RequestBody); request.RequestFormat = DataFormat.Json; CookieContainer rscookie = RestoreCookie(cookieName); //if (rscookie == null) // return response; restClient.CookieContainer = rscookie; response = restClient.Execute <SaveResponse>(request); if (response.StatusCode == HttpStatusCode.OK && response.ResponseStatus == ResponseStatus.Completed) { var jsonResponse = JsonConvert.DeserializeObject <dynamic>(response.Content); response.Data.EntityId = (object)jsonResponse["EntityId"]; SereneRequester.SaveCookie(restClient.CookieContainer, cookieName); } } catch (Exception ex) { response.ErrorMessage = ex.Message; response.ErrorException = ex.InnerException; //MessageBox.Show(ex.Message); } return(response); } else { response.ErrorMessage = "Internet connection not available. Please check connection."; return(response); } #endregion }
// List of rows retrieve request public static IRestResponse <ListResponse <MyRow> > List <MyRow>(string baseUrl, string resource, ListRequest listRequest, string cookieName) { #region List Service Request IRestResponse <ListResponse <MyRow> > response = new RestResponse <ListResponse <MyRow> >(); if (InternetConnection.IsConnectedToInternet() == true) { try { var restClient = new RestClient(baseUrl); var request = new RestRequest(Method.POST) { Resource = resource }; request.AddHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); request.AddJsonBody(listRequest); request.RequestFormat = DataFormat.Json; CookieContainer rscookie = RestoreCookie(cookieName); //if (rscookie == null) // return response; restClient.CookieContainer = rscookie; response = restClient.Execute <ListResponse <MyRow> >(request); if (response.StatusCode == HttpStatusCode.OK && response.ResponseStatus == ResponseStatus.Completed) { SereneRequester.SaveCookie(restClient.CookieContainer, cookieName); } } catch (Exception ex) { response.ErrorMessage = ex.Message; response.ErrorException = ex.InnerException; //MessageBox.Show(ex.Message); } return(response); } else { response.ErrorMessage = "Internet connection not available. Please check connection."; return(response); } #endregion }
// Change Password public static IRestResponse <RetrieveResponse <MyRow> > ChangePassword <MyRow>(string baseUrl, string resourceChangePassword, ChangePasswordRequest ChangePasswordRequestRow, string cookieName) { #region Get Change Password IRestResponse <RetrieveResponse <MyRow> > response = new RestResponse <RetrieveResponse <MyRow> >(); if (InternetConnection.IsConnectedToInternet() == true) { try { var restClient = new RestClient(baseUrl); var request = new RestRequest(Method.POST); var json = JsonConvert.SerializeObject(ChangePasswordRequestRow); request.Resource = resourceChangePassword; request.AddParameter("application/json;charset=utf-8", json, ParameterType.RequestBody); request.RequestFormat = DataFormat.Json; CookieContainer rscookie = RestoreCookie(cookieName); if (rscookie == null) { rscookie = new CookieContainer(); } restClient.CookieContainer = rscookie; response = restClient.Execute <RetrieveResponse <MyRow> >(request); if (response.StatusCode == HttpStatusCode.OK && response.ResponseStatus == ResponseStatus.Completed) { SereneRequester.SaveCookie(restClient.CookieContainer, cookieName); } } catch (Exception ex) { response.ErrorMessage = ex.Message; response.ErrorException = ex.InnerException; //MessageBox.Show(ex.Message); } return(response); } else { response.ErrorMessage = "Internet connection not available. Please check connection."; return(response); } #endregion }
// Check user is LoggedIn or not public static IRestResponse <bool> IsLoggedIn(string baseUrl, string cookieName) { #region IsLoggedIn Request IRestResponse <bool> response = new RestResponse <bool>(); if (InternetConnection.IsConnectedToInternet() == true) { try { var restClient = new RestClient(baseUrl); var request = new RestRequest(Method.POST) { Resource = "/Account/IsLoggedIn" }; CookieContainer rscookie = RestoreCookie(cookieName); if (rscookie == null) { rscookie = new CookieContainer(); } restClient.CookieContainer = rscookie; response = restClient.Execute <bool>(request); if (response.StatusCode == HttpStatusCode.OK && response.ResponseStatus == ResponseStatus.Completed) { SereneRequester.SaveCookie(restClient.CookieContainer, cookieName); } } catch (Exception ex) { response.ErrorMessage = ex.Message; response.ErrorException = ex.InnerException; //MessageBox.Show(ex.Message); } return(response); } else { response.ErrorMessage = "Internet connection not available. Please check connection."; return(response); } #endregion }
// Bulk Generate rows request public static IRestResponse <ListResponse <ResponseEntity> > BulkGenerate <RequestEntity, ResponseEntity>(string baseUrl, string resource, RequestEntity requestParam, string cookieName) { #region Bulk Generate Rows Service Request IRestResponse <ListResponse <ResponseEntity> > response = new RestResponse <ListResponse <ResponseEntity> >(); if (InternetConnection.IsConnectedToInternet() == true) { try { var restClient = new RestClient(baseUrl); var request = new RestRequest(Method.POST); request.AddHeader("Content-Type", "application/octet-stream"); request.Resource = resource; request.AddJsonBody(requestParam); request.RequestFormat = DataFormat.Json; CookieContainer rscookie = RestoreCookie(cookieName); //if (rscookie == null) // return response; restClient.CookieContainer = rscookie; response = restClient.Execute <ListResponse <ResponseEntity> >(request); if (response.StatusCode == HttpStatusCode.OK && response.ResponseStatus == ResponseStatus.Completed) { SereneRequester.SaveCookie(restClient.CookieContainer, cookieName); } } catch (Exception ex) { response.ErrorMessage = ex.Message; response.ErrorException = ex.InnerException; //MessageBox.Show(ex.Message); } return(response); } else { response.ErrorMessage = "Internet connection not available. Please check connection."; return(response); } #endregion }