Fiquei com uma dúvida: Onde foi que do nome passado do Artista conseguiu acessar o Id dele para realizar o delete?
Fiquei com uma dúvida: Onde foi que do nome passado do Artista conseguiu acessar o Id dele para realizar o delete?
Olá Marconi! Tudo certo?
Para acessar o ID do artista a partir do nome, você está utilizando uma abordagem que envolve dois métodos principais na sua API: GetArtistaPorNomeAsync()
e DeleteArtistaAsync()
.
Consulta pelo Nome: Quando você acessa a página de edição de um artista, o nome do artista é passado como um parâmetro na URL. O método OnInitializedAsync()
é chamado automaticamente quando o componente é inicializado. Nesse método, você utiliza GetArtistaPorNomeAsync(NomeArtista!)
para buscar as informações completas do artista, incluindo o ID, a partir do nome fornecido. Esse método faz uma chamada para a API que retorna um objeto ArtistaResponse
contendo todos os detalhes do artista.
protected override async Task OnInitializedAsync()
{
Artista = await artistasAPI.GetArtistaPorNomeAsync(NomeArtista!);
nome = Artista!.Nome;
biografia = Artista!.Bio;
}
Deleção pelo ID: Uma vez que você tenha o objeto ArtistaResponse
, você pode acessar o ID do artista através de Artista!.Id
. Esse ID é então utilizado no método Deletar()
para chamar DeleteArtistaAsync(Artista!.Id)
, que faz uma requisição à API para deletar o artista com o ID especificado.
private async Task Deletar()
{
await artistasAPI.DeleteArtistaAsync(Artista!.Id);
navigationManager.NavigateTo("/Artistas");
}
Dessa forma, ao passar o nome do artista, você consegue acessar o ID dele através de uma consulta à API, que é então usado para realizar a exclusão.
Espero ter ajudado e bons estudos!