public async Task <TResponse> TrySaveChangesAsync <TResponse>() where TResponse : CrudResponse <TResponse>, new() { return((await TrySaveChangesAsync()) ? CrudResponse <TResponse> .Success() : CrudResponse <TResponse> .Error(ErrorType.DatabaseError)); }
public async Task <TResponse> TrySaveChangesAsync <TResponse>() where TResponse : CrudResponse <TResponse>, new() { return((await TrySaveChangesAsync()) ? CrudResponse <TResponse> .Success() : new TResponse()); }
public async Task <CrudResponse <T> > UpdateAsync(T entity) { try { _context.Entry(entity).State = EntityState.Modified; _context.Set <T>().Update(entity); await _context.SaveChangesAsync(); var response = new CrudResponse <T>() { Success = true, Message = $"Entity successfully updated.", Entity = entity }; return(response); } catch (Exception ex) { var response = new CrudResponse <T>() { Success = false, Message = ex.Message }; return(response); } }
public async Task <CrudResponse <T> > AddAsync(T entity) { try { await _context.Set <T>().AddAsync(entity); await _context.SaveChangesAsync(); var response = new CrudResponse <T>() { Success = true, Message = $"Entity was successfully added.", Entity = entity }; return(response); } catch (Exception ex) { var response = new CrudResponse <T>() { Success = false, Message = ex.Message }; return(response); } }
public ActionResult Details(int?Id = null) { CrudModel model = null; if (!Id.HasValue || Id.Value == 0) { return(RedirectToAction("Index")); } CrudRequest request = new CrudRequest(Id.Value); StringContent content = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8, "application/json"); HttpResponseMessage httpResponse = _client.PostAsync("api/Crud/GetRecord", content).Result; string data = httpResponse.Content.ReadAsStringAsync().Result; CrudResponse response = JsonConvert.DeserializeObject <CrudResponse>(data); if (response.Success) { model = new CrudModel(response.Crud); return(View(model)); } return(RedirectToAction("Index")); }
public void handleValidationErrors(CrudResponse response, List <Exception> validationErrors) { //TODO add handle validation errors //foreach (FieldException fieldError in validationErrors.Where(p=>p.) //{ // Message message = new Message(fieldError); // response.Messages.Add(message); //} }
public async Task <TResponse> TrySaveChangesAsync <TResponse>(Action <TResponse> responseModifierOnSuccess) where TResponse : CrudResponse <TResponse>, new() { if (await TrySaveChangesAsync()) { var response = CrudResponse <TResponse> .Success(); responseModifierOnSuccess(response); return(response); } return(new TResponse()); }
protected CrudResponse ConvertServiceResponseToCrudResponse(int id) { CrudResponse res = new CrudResponse(); if (id > 0) { res.ID = id; res.Success = true; } else { res.Success = false; } return(res); }
public CrudResponse handleHttpFourAndFiveHundredErrors(CrudResponse response, HttpException error, int id) { response.ChangedEntityId = id; Message message = new Message(); message.DetailMessage = error.GetHtmlErrorMessage(); message.Severity = error.ErrorCode.ToString(); message.Type = error.GetType().ToString(); response.Messages.Add(message); response.ErrorCode = error.GetHttpCode().ToString(); response.ErrorMessage = error.Message; return(response); }
private bool TryExecuteCrudRequest(string[] chunks, IHttpContext context, bool handled, string appName) { IRequest request = context.Request; IResponse response = context.Response; string connectionName; string methodName; string daoName; GetDaoInfo(chunks, out connectionName, out methodName, out daoName); DaoProxyRegistration daoProxyReg = null; connectionName = connectionName.ToLowerInvariant(); if (CommonDaoProxyRegistrations.ContainsKey(connectionName)) { daoProxyReg = CommonDaoProxyRegistrations[connectionName]; } else if (AppDaoProxyRegistrations.ContainsKey(appName)) { daoProxyReg = AppDaoProxyRegistrations[appName].Where(dpr => dpr.ContextName.Equals(connectionName)).FirstOrDefault(); } if (daoProxyReg != null) { Type daoType = daoProxyReg.ServiceProvider[daoName]; if (daoType != null) { if (daoProxyReg.Database == null) { RegisterDatabase(daoProxyReg); } DaoCrudResponseProvider responseProvider = new DaoCrudResponseProvider(daoProxyReg, context); CrudResponse crudResponse = responseProvider.Execute(); if (crudResponse.Success) { handled = true; SendResponse(response, crudResponse.ToJson()); } } } return(handled); }
private CrudResponse handleDeleteEntity(string entityType, int id) { string url = restUrlFactory.assembleEntityDeleteUrl(entityType, id, restApiSession.GetBhRestToken()); CrudResponse response = null; try { HttpRequestMessage _httpRequest = new HttpRequestMessage(); _httpRequest.RequestUri = new Uri(url); _httpRequest.Method = HttpMethod.Delete; response = JsonConvert.DeserializeObject <DeleteResponse>(httpClient.SendAsync(_httpRequest).Result.Content.ReadAsStringAsync().Result); } catch (HttpException error) { response = restErrorHandler.handleHttpFourAndFiveHundredErrors(new DeleteResponse(), error, id); } return(response); }
public ActionResult Index() { try { StringContent content = new StringContent(JsonConvert.SerializeObject(new CrudRequest()), Encoding.UTF8, "application/json"); HttpResponseMessage httpResponse = _client.PostAsync("api/Crud/GetRecords", content).Result; string data = httpResponse.Content.ReadAsStringAsync().Result; CrudResponse response = JsonConvert.DeserializeObject <CrudResponse>(data); CrudModel model = new CrudModel(response.Cruds); return(View(model)); } catch (CrudException ex) { } catch (Exception ex) { } return(View()); }
public CrudResponse <T> Delete(T entity) { try { _context.Set <T>().Remove(entity); _context.SaveChanges(); var response = new CrudResponse <T>() { Success = true, Message = $"Entity successfully deleted.", Entity = entity }; return(response); } catch (Exception ex) { var response = new CrudResponse <T>() { Success = false, Message = ex.Message }; return(response); } }
public CrudResponse GetRecord(CrudRequest request) { CrudRequest dbCrud = null; CrudResponse response = null; try { if (_crud.GetRecord(out dbCrud, request)) { response = new CrudResponse(true, "Registro recuperado com sucesso!", dbCrud); } } catch (CrudException ex) { response = new CrudResponse(false, ex.Message); } catch (Exception ex) { response = new CrudResponse(false, "Não foi possível recuperar o registro. Erro: " + ex.Message); } return(response); }
public CrudResponse GetRecords(CrudRequest request) { List <CrudRequest> lstCruds = null; CrudResponse response = null; try { if (_crud.GetRecords(out lstCruds, request)) { response = new CrudResponse(true, "Registros recuperados com sucesso!", lstCruds); } } catch (CrudException ex) { response = new CrudResponse(false, ex.Message); } catch (Exception ex) { response = new CrudResponse(false, "Não foi possível recuperar os registros. Erro: " + ex.Message); } return(response); }
public TResponse Error(ErrorType errorType) => CrudResponse <TResponse> .Error(errorType);
public TResponse Success() => CrudResponse <TResponse> .Success();