static void Create <T>(NetmeraContent content, string id) { try { //if ((content.data.ToString().Contains("&"))) //{ // Dictionary<string, string> addressDictionary = JsonConvert.DeserializeObject<Dictionary<string, string>>(content.data.ToString()); // foreach (KeyValuePair<string, string> keyValuePair in addressDictionary) // { // if (keyValuePair.Value.Contains("&")) // content.add(keyValuePair.Key, keyValuePair.Value.Replace("&", "%26")); // } //} content.create(); var conn2 = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; " + "Data Source=C:\\NetmeraRMTools\\sqliteInsertLog\\insertlog.accdb"); var cmdInsert = new OleDbCommand("INSERT INTO Log (UPRN,Question_Ref,localID,netmeraPath) VALUES (@UPRN,@Question_Ref,@localID,@netmeraPath)", conn2); cmdInsert.Parameters.AddWithValue("@UPRN", content.getString("UPRN")); cmdInsert.Parameters.AddWithValue("@Question_Ref", content.getString("Question_Ref")); cmdInsert.Parameters.AddWithValue("@localID", content.getString("id")); cmdInsert.Parameters.AddWithValue("@netmeraPath", content.getPath()); conn2.Open(); cmdInsert.ExecuteNonQuery(); conn2.Close(); totalNum = totalNum + 1; } catch (Exception ex) { Console.WriteLine("Create error: " + ex.Message); } }
//public async Task<ApiResponse<List<List<string>>>> BatchUpdate(string table, List<Dictionary<string, string>> entities) //{ // var r = new List<List<string>>(); // var contentJArray = new JArray(); // var paramsJson = new JObject(); // foreach (var entity in entities) // { // var contentJSon = new JObject(); // foreach (var e in entity.Keys) // { // contentJSon.Add(new JProperty(e, entity[e])); // } // contentJArray.Add(contentJSon); // } // foreach (IEnumerable<JToken> s in contentJArray.Children().Batch(BULK_QANTITY)) // { // var l = new List<String>(); // var netmeraTable = new NetmeraContent(table); // var bodyJArray = new JArray(); // foreach (JToken sik in s) // { // bodyJArray.Add(sik); // } // paramsJson.Add("content", bodyJArray); // netmeraTable.add("params", paramsJson); // netmeraTable.add("method", "content.updateBulkContentWithoutActionToken"); // netmeraTable.add("st", App.KEY); // var t = new TaskCompletionSource<object>(); // //try // //{ // netmeraTable.bulkUpdate((o, ex) => // { // t.SetResult(null); // paramsJson.RemoveAll(); // }); // //} // //catch (NetmeraException ex) // //{ // // if (ex.getCode().ToString() != "135") // // { MessageBox.Show(ex.getCode().ToString()); } // //} // await t.Task; // } // return new ApiResponse<List<List<string>>> { Data = r }; //} public async Task <ApiResponse <string> > Create <T>(NetmeraContent content, string id) { bool setted = false; TaskCompletionSource <ApiResponse <string> > _task = new TaskCompletionSource <ApiResponse <string> >(); try { content.create((c, ex) => { if (ex != null) { if (setted) { return; } setted = true; BugSense.BugSenseHandler.Instance.LogException(ex, "Entity", typeof(T).Name); _task.SetResult(new ApiResponse <string>() { IsSuccess = false, Message = "Error while processing request. Try again", Exception = ex, Data = id }); } else { if (setted) { return; } setted = true; _task.SetResult(new ApiResponse <string>() { IsSuccess = true, Data = id }); } }); //await Task.Delay(1000); //if (!setted) //{ // setted = true; // _task.SetResult(new ApiResponse<T>() { IsSuccess = true }); //} } catch (Exception ex) { BugSense.BugSenseHandler.Instance.LogException(ex, "Entity", typeof(T).Name); _task.SetResult(new ApiResponse <string>() { IsSuccess = false, Message = "Error while processing request. Try again", Exception = ex, Data = id }); } return(await _task.Task); }