public async Task <IActionResult> Edit(int id, LivroEntidade livroEntidade)
        {
            if (id != livroEntidade.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    var file = Request.Form.Files.SingleOrDefault();

                    await _domainService.UpdateAsync(livroEntidade, file?.OpenReadStream());

                    return(RedirectToAction(nameof(Index)));
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!LivroEntidadeExists(livroEntidade.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }
            return(View(livroEntidade));
        }
Пример #2
0
        public static void Run([QueueTrigger("function-visualizacao-queue", Connection = "AzureWebJobsStorage")] LivroEntidade livro, ILogger log)
        {
            log.LogInformation($"C# Queue trigger function processed.");

            var connectionString = Environment.GetEnvironmentVariable("SqlConnectionString");

            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                conn.Open();
                var textSql  = $@"UPDATE [dbo].[Livro] SET [UltimaVisualizacao] = GETDATE() WHERE [Id] = {livro.Id};";
                var countSql = $@"UPDATE [dbo].[Livro] SET [QtdVisualizacao] = [QtdVisualizacao] + 1 WHERE [Id] = {livro.Id};";


                using (SqlCommand cmd = new SqlCommand(textSql, conn))
                {
                    var rowsAffected = cmd.ExecuteNonQuery();
                    log.LogInformation($"rowsAffected: {rowsAffected}");
                }

                using (SqlCommand cmd = new SqlCommand(countSql, conn))
                {
                    var rowsAffected = cmd.ExecuteNonQuery();
                    log.LogInformation($"rowsAffected: {rowsAffected}");
                }
            }
        }
        public async Task InsertAsync(LivroEntidade livroEntidade, Stream stream)
        {
            var newUri = await _blobService.UploadAsync(stream);

            livroEntidade.ImageUri = newUri;

            await _repository.InsertAsync(livroEntidade);
        }
        public async Task <IActionResult> Create(LivroEntidade livroEntidade)
        {
            if (ModelState.IsValid)
            {
                var file = Request.Form.Files.SingleOrDefault();

                await _domainService.InsertAsync(livroEntidade, file?.OpenReadStream());

                return(RedirectToAction(nameof(Index)));
            }
            return(View(livroEntidade));
        }
        public async Task UpdateAsync(LivroEntidade livroEntidade, Stream stream)
        {
            if (stream != null)
            {
                var livro = await _repository.GetByIdAsync(livroEntidade.Id);

                await _blobService.DeleteAsync(livro.ImageUri);

                var blobUri = await _blobService.UploadAsync(stream);

                livroEntidade.ImageUri = blobUri.ToString();
            }

            await _repository.UpdateAsync(livroEntidade);
        }
        public async Task DeleteAsync(LivroEntidade livroEntidade)
        {
            await _blobService.DeleteAsync(livroEntidade.ImageUri);

            await _repository.DeleteAsync(livroEntidade);
        }
 public async Task DeleteAsync(LivroEntidade livroEntidade)
 {
     _context.Remove(livroEntidade);
     await _context.SaveChangesAsync();
 }
 public async Task UpdateAsync(LivroEntidade livroEntidade)
 {
     _context.Update(livroEntidade);
     await _context.SaveChangesAsync();
 }
 public async Task InsertAsync(LivroEntidade livroEntidade)
 {
     _context.Add(livroEntidade);
     await _context.SaveChangesAsync();
 }