private static void LogError(ItemModel model, [CallerMemberName] string caller = "Unknown") { if (model == null) { throw new ArgumentNullException(nameof(model)); } dynamic errorObj = new ExpandoObject(); errorObj.BlockOrigin = "ItemsBlock"; errorObj.Type = "Warning"; var errorMessage = new StringBuilder(); errorMessage.Append("Following Errors occured while trying to "); errorMessage.Append(caller); errorMessage.Append(" ItemViewModel object: "); foreach (var validationMessage in model.ValidationResult.Errors) { errorMessage.Append($"{validationMessage.Value}; "); } errorObj.Message = errorMessage.ToString(); var jsonObject = JsonConvert.SerializeObject(errorObj); try { Gateway.CallBlock <object>("LoggingBlock", HttpVerbsEnum.POST, jsonObject); } catch (Exception e) { ErrorHandler.LogError <ItemModel>(e); } }