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}"));
            }
        }
Example #2
0
        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);
        }
Example #4
0
        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"));
        }