예제 #1
0
        public async Task <IActionResult> OnGetAsync(string id)
        {
            var image = await _imagesService.FindByIdAsync(id);

            if (image == null)
            {
                return(NotFound());
            }

            PageTitle = await TranslationsService.TranslateAsync("images");

            TitleDisplay = await TranslationsService.TranslateAsync("title");

            ImageDisplay = await TranslationsService.TranslateAsync("image");

            TitleRequiredError = TranslationsService.TranslateErrorByDescriber(ErrorDescriberConstants.RequiredField, $"The field '{TitleDisplay}' is required.", TitleDisplay);
            TitleLengthError   = TranslationsService.TranslateErrorByDescriber(ErrorDescriberConstants.StringLength, $"The field '{TitleDisplay}' must contain a minimum of {4} and a maximum of {30} characters.", TitleDisplay, 4.ToString(), 30.ToString());

            ForeignKeyProperties = _imagesService.GetForeignKeyPropertiesToDto(image).ToList();

            ViewData["ImgId"] = id;
            ImageId           = id;

            Vm = new UpdateImageViewModel
            {
                Title = image.Name,
                Url   = image.Url
            };

            return(Page());
        }
예제 #2
0
        public async Task <IActionResult> OnPostDeleteAsync(string id)
        {
            var image = await _imagesService.FindByIdAsync(id);

            if (image == null)
            {
                return(NotFound());
            }

            var result = await _imagesService.RemoveImageAndDeleteAsync(image);

            if (result.Successfull)
            {
                return(RedirectToPage());
            }

            foreach (var error in result.Errors)
            {
                ModelState.AddModelError(string.Empty, error.Message);
            }

            return(await OnGetAsync());
        }