예제 #1
0
        public async Task <IActionResult> Create(CreateUniversityViewModel model)
        {
            University university;

            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            TrimStringProperties(ref model);
            if (model.Id != 0)
            {
                university = await _dbContext.Universities.FindAsync(model.Id);

                if (university == null)
                {
                    return(NotFound("Create", model.Id));
                }
                university.ModifiedDateTime = DateTime.Now;
            }
            else
            {
                university = new University();
                university.CreateDateTime = university.ModifiedDateTime = DateTime.Now;
                _dbContext.Universities.Add(university);
            }

            university.Name      = model.Name;
            university.ShortName = model.ShortName;
            university.Page      = model.Page;
            university.Color     = model.Color;

            try
            {
                if (model.Logo != null)
                {
                    if (university.logo != null)
                    {
                        await _fileService.RemoveFile(university.logo);
                    }
                    university.FilePathInDirectory = await _fileService
                                                     .SaveFileAsync(model.Logo, StringConstants.UniversityLogosDeroctory);

                    university.logo = GetPath(university.FilePathInDirectory);
                }

                await _dbContext.SaveChangesAsync();

                model.Id = university.Id;
            }
            catch (Exception ex)
            {
                return(Error("Create", ex));
            }

            return(RedirectToActionPermanent("Edit", model));
        }
예제 #2
0
        public async Task <IActionResult> Edit(CreateUniversityViewModel model)
        {
            ModelState.Clear();
            var university = await _dbContext.Universities.FindAsync(model.Id);

            if (university == null)
            {
                return(NotFound("Edit", model.Id));
            }
            await model.InitAsync(university, _dbContext);

            return(View("Create", model));
        }
예제 #3
0
        public async Task <IActionResult> Create(CreateUniversityViewModel viewModel)
        {
            var universityDto = new AddUnivesityDTO {
                Name = viewModel.Name, Address = viewModel.Address
            };
            var model = await _service.AddAsync(universityDto);

            if (model == null)
            {
                return(new JsonResult(new ReturnMessage {
                    MessageContent = "Unexpected error when creating an university"
                })
                {
                    StatusCode = (int)HttpStatusCode.BadRequest
                });
            }
            return(Created($"http://localhost:44325/Universities/{model.UniversityId}", model));
        }
예제 #4
0
        public IActionResult Create()
        {
            var model = new CreateUniversityViewModel();

            return(View(model));
        }