private void Register(Account obj, ProgressDialog dialog, Activity curActivity) { try { var client = new RestClient(Common.UrlBase); var request = new RestRequest("Account/Register", Method.POST); //{ "FirstName" : "Anik", "LastName" : "Sen", "UserTypeId" : 1, "password" : "1234", "Address" : " ", "EmailId" : "*****@*****.**", "FarmId" : default(int), "UserDeviceId": "71e28a9140f8712b" } request.AddJsonBody(new { FirstName = obj.FirstName, LastName = obj.LastName, UserTypeId = obj.UserTypeId, password = obj.password, Address = obj.Address, EmailId = obj.EmailId, FarmId = obj.FarmId, UserDeviceId = obj.UserDeviceId }); request.AddHeader("Content-Type", "application/json"); //request.AddHeader("token", "UnIwWlFXN0lFYWt0TG91d0tSQnU4WDZwSFhrNmU3VnZVR1A1V3lxSHVaND06YW5pay5zZW5Ab3V0bG9vay5jb206NjM2Njk1NDMyMDUwMzY5NDgy"); IRestResponse response = client.Execute(request); var content = response.Content; var responseObj = Newtonsoft.Json.JsonConvert.DeserializeObject <AccountResponse>(content); if (response.StatusCode == System.Net.HttpStatusCode.OK) { if (responseObj.Status == ResponseStatus.Successful && !string.IsNullOrEmpty(responseObj.AuthToken)) { objdb = new DBaseOperations(); var lst = objdb.selectTable(); if (lst != null && lst.Count > default(int)) { objdb.removeTable(lst.FirstOrDefault()); } /*if (!objdb.isDBExists()) * { * objdb.createDatabase(); * }*/ objdb.createDatabase(); objdb.insertIntoTable(new UserLoginInfo() { EmailId = input_useremail.Text.Trim(), GoodName = string.Format("{0} {1}", obj.FirstName, obj.LastName), Password = obj.password, IsAdmin = obj.IsAdmin ? 1 : default(int), AuthToken = responseObj.AuthToken, ProfilePicture = _profilepicbase64 }); Intent intent = new Intent(curActivity, typeof(MainContentActivity)); StartActivity(intent); curActivity.Finish(); } else { throw new Exception(responseObj.Error); } } else { throw new Exception("Unable to register at this moment. Please try again later."); } } catch (Exception ex) { //throw ex; curActivity.RunOnUiThread(() => { Android.App.AlertDialog.Builder alertDiag = new Android.App.AlertDialog.Builder(curActivity); alertDiag.SetTitle(Resource.String.DialogHeaderError); alertDiag.SetMessage(ex.Message); alertDiag.SetIcon(Resource.Drawable.alert); alertDiag.SetPositiveButton(Resource.String.DialogButtonOk, (senderAlert, args) => { }); Dialog diag = alertDiag.Create(); diag.Show(); diag.SetCanceledOnTouchOutside(false); }); } finally { if (dialog != null && dialog.IsShowing) { dialog.Hide(); dialog.Dismiss(); } } }