public async Task <CQuerieResult> SearchDevicesByNameAndDescription(string server, string project, string layer, string lang, string tosearch, string filter = "") { string url = ""; if (filter == "") { url = string.Format(server + "/v1/SearchDevicesByNameAndDescription/{0}/{1}/{2}/{3}", WebUtility.UrlEncode(project), WebUtility.UrlEncode(layer), WebUtility.UrlEncode(lang), WebUtility.UrlEncode(tosearch).Replace("+", "%20")); } else { url = string.Format(server + "/v1/SearchDevicesByNameAndDescriptionWithFilter/{0}/{1}/{2}/{3}/{4}", WebUtility.UrlEncode(project), WebUtility.UrlEncode(layer), WebUtility.UrlEncode(lang), WebUtility.UrlEncode(tosearch).Replace("+", "%20"), WebUtility.UrlEncode(filter)); } var response = await m_Http.GetAsync(url); var output = await response.Content.ReadAsStringAsync(); IBRServiceContracts.TResult <CQuerieResult> result = Newtonsoft.Json.JsonConvert.DeserializeObject < IBRServiceContracts.TResult <CQuerieResult> >(output); if (result.Status) { return(result.data); } else { return(null); } }
public async void OnSaveClicked(object sender, EventArgs e) { var m_Http = XComosMobile.Services.XServices.Instance.GetService <HttpClient>(); IBRServiceContracts.CWriteValueCollection collection = new IBRServiceContracts.CWriteValueCollection() { Values = Values.Values.ToArray(), }; //var http = m_ComosWeb.GetComosHttpClient(); string user = ProjectData.User; string project = ProjectData.SelectedProject.UID; string workinglayer = ProjectData.SelectedLayer.UID; string language = ProjectData.SelectedLanguage.LCID; var db = Services.XServices.Instance.GetService <Services.XDatabase>(); string servername = db.ReadSetting("ServerName", "http://siemens.southcentralus.cloudapp.azure.com"); string output = Newtonsoft.Json.JsonConvert.SerializeObject(collection); StringContent content = new StringContent(output, Encoding.UTF8, "application/json"); string url = string.Format(servername + "/BRMobile/v1/WriteComosValues/{0}/{1}/{2}/{3}", user, WebUtility.UrlEncode(project), WebUtility.UrlEncode(workinglayer), language); // Working POST /* * string output = Newtonsoft.Json.JsonConvert.SerializeObject(collection); * StringContent content = new StringContent(output, Encoding.UTF8, "application/json"); * string url = string.Format("http://siemens.southcentralus.cloudapp.azure.com/BRMobile/v1/WriteComosValues/{0}/{1}/{2}/{3}", * user, WebUtility.UrlEncode(project), WebUtility.UrlEncode(workinglayer), language); */ var response = await m_Http.PostAsync(url, content); var platform = Services.XServices.Instance.GetService <Services.IPlatformSystem>(); if (response.StatusCode != HttpStatusCode.OK) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), Services.TranslateExtension.TranslateText("save_failed") + response.StatusCode.ToString(), "OK"); return; } output = await response.Content.ReadAsStringAsync(); IBRServiceContracts.TResult <IBRServiceContracts.CWriteValueResult[]> result = Newtonsoft.Json.JsonConvert.DeserializeObject < IBRServiceContracts.TResult <IBRServiceContracts.CWriteValueResult[]> >(output); if (!result.Status) { await App.Current.MainPage.DisplayAlert(Services.TranslateExtension.TranslateText("error"), Services.TranslateExtension.TranslateText("save_failed") + result.Message, "OK"); return; } await App.Current.MainPage.DisplayAlert("", Services.TranslateExtension.TranslateText("done"), "OK"); return; }
public async Task <bool> WriteComosValues(IBRServiceContracts.CWriteValueCollection collection, string servername, string user, string project, string workinglayer, string language) { string output = Newtonsoft.Json.JsonConvert.SerializeObject(collection); StringContent content = new StringContent(output, Encoding.UTF8, "application/json"); string url = string.Format(servername + "/v1/WriteComosValues/{0}/{1}/{2}/{3}", user, WebUtility.UrlEncode(project), WebUtility.UrlEncode(workinglayer), language); var response = await m_Http.PostAsync(url, content); // Acá hay un error if (response.StatusCode != HttpStatusCode.OK) { return(false); } output = await response.Content.ReadAsStringAsync(); IBRServiceContracts.TResult <IBRServiceContracts.CWriteValueResult[]> result = Newtonsoft.Json.JsonConvert.DeserializeObject < IBRServiceContracts.TResult <IBRServiceContracts.CWriteValueResult[]> >(output); return(result.Status); }