public async Task <LanguageResponse> SaveAsync(Language language) { try { await _languageRepository.AddAsync(language); await _unitOfWork.CompleteAsync(); return(new LanguageResponse(language)); } catch (Exception ex) { return(new LanguageResponse($"An error ocurred while saving the Language: {ex.Message}")); } }
public async Task <IActionResult> Add(Language model) { if (ModelState.IsValid) { model.Abbreviation = model.Abbreviation.ToLower(); model.EnglishName = CapitalizeFirstLetter(model.EnglishName); model.NativeName = CapitalizeFirstLetter(model.NativeName); await languageRepository.AddAsync(model); return(RedirectToAction("index")); } return(View(model)); }
public override async Task <int> HandleCommand(InsertLanguageCommand request, CancellationToken cancellationToken) { var id = 0; using (var conn = DALHelper.GetConnection()) { conn.Open(); using (var trans = conn.BeginTransaction()) { try { request.Model.CreatedDate = DateTime.Now; request.Model.CreatedBy = request.LoginSession.Id; request.Model.ModifiedDate = DateTime.Now; request.Model.ModifiedBy = request.LoginSession.Id; id = await languageRepository.AddAsync(request.Model); } catch (Exception ex) { throw ex; } finally { if (id > 0) { trans.Commit(); } else { try { trans.Rollback(); } catch { } } } } } return(id); }
public async Task <ActionResult> Languages(bool delete) { if (delete) { foreach (var language in await _languageRepository.GetAllAsync()) { await _languageRepository.DeleteAsync(language); } return(Content($"All languages deleted")); } var languages = await _languageRepository.GetAllAsync(); if (!languages.Any()) { var newLanguages = new List <Language> { new Language { Name = "Apache", Tag = "apache" }, new Language { Name = "Bash", Tag = "bash" }, new Language { Name = "C#", Tag = "csharp" }, new Language { Name = "C++", Tag = "cpp" }, new Language { Name = "CSS", Tag = "css" }, new Language { Name = "CoffeeScript", Tag = "coffeescript" }, new Language { Name = "Diff", Tag = "diff" }, new Language { Name = "HTML, XML", Tag = "html" }, new Language { Name = "HTTP", Tag = "http" }, new Language { Name = "Ini", Tag = "ini" }, new Language { Name = "JSON", Tag = "json" }, new Language { Name = "Java", Tag = "java" }, new Language { Name = "JavaScript", Tag = "javascript" }, new Language { Name = "Makefile", Tag = "makefile" }, new Language { Name = "Markdown", Tag = "markdown" }, new Language { Name = "Nginx", Tag = "nginx" }, new Language { Name = "Objective-C", Tag = "objectivec" }, new Language { Name = "PHP", Tag = "php" }, new Language { Name = "Perl", Tag = "perl" }, new Language { Name = "Python", Tag = "python" }, new Language { Name = "Ruby", Tag = "ruby" }, new Language { Name = "SQL", Tag = "sql" } }; foreach (var language in newLanguages) { await _languageRepository.AddAsync(language); } return(Content($"{newLanguages.Count} Languages created")); } return(Content("Existing languages found. Provide delete parameter to remove")); }