ajustes
This commit is contained in:
parent
699c30821c
commit
4d8a043ec8
@ -12,7 +12,7 @@
|
||||
<nav>
|
||||
<a href="/">Início</a>
|
||||
<span>|</span>
|
||||
<a href="https://git.gbrl.dev/Gabriel/Biblioteca/archive/etapa3.zip">Código fonte</a>
|
||||
<a href="https://git.gbrl.dev/Gabriel/Biblioteca/archive/etapa3-v1.zip">Código fonte</a>
|
||||
</nav>
|
||||
|
||||
<p>
|
||||
@ -527,6 +527,16 @@ app.MapGet("/livros/{id}", async (long id) =>
|
||||
|
||||
await cmd.ExecuteNonQueryAsync();
|
||||
|
||||
using var cmd2 = conn.CreateCommand();
|
||||
|
||||
cmd2.CommandText = "SELECT LAST_INSERT_ID()";
|
||||
|
||||
using var reader = await cmd2.ExecuteReaderAsync();
|
||||
|
||||
await reader.ReadAsync();
|
||||
|
||||
livro.Id = reader.GetInt64(0);
|
||||
|
||||
return livro;
|
||||
}`}</code></pre>
|
||||
|
||||
@ -600,19 +610,30 @@ cmd.Parameters.AddWithValue("foto", livro.Foto);
|
||||
cmd.Parameters.AddWithValue("keywords", livro.Keywords);
|
||||
cmd.Parameters.AddWithValue("ativo", livro.Ativo);
|
||||
cmd.Parameters.AddWithValue("criadoem", livro.CriadoEm);
|
||||
cmd.Parameters.AddWithValue("atualizadoem", livro.AtualizadoEm);`}</code></pre>
|
||||
cmd.Parameters.AddWithValue("atualizadoem", livro.AtualizadoEm);
|
||||
|
||||
await cmd.ExecuteNonQueryAsync()`}</code></pre>
|
||||
|
||||
<p>
|
||||
Assim como no método de listagem e da consulta por ISBN, montamos o SQL com um INSERT, e depois adicionamos os parâmetros do comando, com os
|
||||
dados do objeto <code>livro</code>.
|
||||
Assim como no método de listagem e da consulta por chave primária, montamos o SQL com um INSERT, adicionamos os parâmetros do comando, com os
|
||||
dados do objeto <code>livro</code>, e depois o executamos.
|
||||
</p>
|
||||
|
||||
<pre><code>{`await cmd.ExecuteNonQueryAsync();
|
||||
<pre><code>{`using var cmd2 = conn.CreateCommand();
|
||||
|
||||
cmd2.CommandText = "SELECT LAST_INSERT_ID()";
|
||||
|
||||
using var reader = await cmd2.ExecuteReaderAsync();
|
||||
|
||||
await reader.ReadAsync();
|
||||
|
||||
livro.Id = reader.GetInt64(0);
|
||||
|
||||
return livro;`}</code></pre>
|
||||
|
||||
<p>
|
||||
Em seguida, executamos o insert através de <code>await cmd.ExecuteNonQueryAsync()</code>. Como a operação é de escrita, não há resultado a ser lido.
|
||||
Em seguida, executamos uma consulta para obter o id do livro recém criado, e o atribuímos à <code>livro.Id</code>, para
|
||||
que possamos incluir este dado, a chave primária e identificador do livro criado, na resposta do endpoint.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -779,7 +800,7 @@ app.MapDelete("/livros/{id}", async (long id) =>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
O código-fonte do projeto desenvolvido até agora pode ser <a href="https://git.gbrl.dev/Gabriel/Biblioteca/archive/etapa3.zip">baixado aqui</a>.
|
||||
O código-fonte do projeto desenvolvido até agora pode ser <a href="https://git.gbrl.dev/Gabriel/Biblioteca/archive/etapa3-v1.zip">baixado aqui</a>.
|
||||
</p>
|
||||
|
||||
</section>
|
||||
Loading…
x
Reference in New Issue
Block a user