/// <inheritdoc />
        Task ISageApiService.PostAsync(SageCreateViewModel sage)
        {
            var arguments = new object[] { sage };
            var func      = requestBuilder.BuildRestResultFuncForMethod("PostAsync", new Type[] { typeof(SageCreateViewModel) });

            return((Task)func(Client, arguments));
        }
Пример #2
0
        // POST api/values
        public async Task <IHttpActionResult> Post([FromBody] SageCreateViewModel sageViewModel)
        {
            var selectedBooks = new HashSet <int>(sageViewModel.SelectedBooks);

            var books = await _uow.BookRepository.GetAllAsync(filter : x => selectedBooks.Contains(x.IdBook), disableTracking : false);

            sageViewModel.Sage.Books = books.ToList();

            await _uow.SageRepository.CreateAsync(sageViewModel.Sage);

            if (await _uow.SaveAsync())
            {
                return(Ok());
            }

            return(BadRequest());
        }
        public async Task <ActionResult> Create(SageViewModel sageViewModel, HttpPostedFileBase photo1)
        {
            if (ModelState.IsValid)
            {
                if (photo1 != null)
                {
                    sageViewModel.Sage.Photo = new byte[photo1.ContentLength];
                    photo1.InputStream.Read(sageViewModel.Sage.Photo, 0, photo1.ContentLength);
                }
                var sage = new SageCreateViewModel
                {
                    Sage          = sageViewModel.Sage,
                    SelectedBooks = sageViewModel.SelectedBooks
                };

                await this._sageApiService.PostAsync(sage);

                return(RedirectToAction("Index"));
            }

            return(View(sageViewModel));
        }