1
resposta

Duvida sobre as tags dos .Net core

Boa noite professor, De acordo com a tag abaixo da aula:

<li>@Html.ActionLink("Registrar", "Registrar", "Conta")</li>

Eu nao entendi bem essa parte onde você coloca o @Html.ActionLink pois entre parenteses você coloca a string de como vai ser chamado o nome na primeira posição na segunda posição o nome da ActionResult e no terceiro o Controlador, porém o controlador se chama ContaController e lá no terceiro item você só colocou Conta. Porque não ficou o nome todo tipo "ContaController"?

<li>@Html.ActionLink("Registrar", "Registrar", "ContaController")</li>
1 resposta

Olá Felipe, tudo certo?

Isso acontece porque o Asp.Net espera que seja passado o nome de um controller e esse controller tenha o sufixo Controller. O que o framework faz é concatenar o nome Conta com Controller, por isso em todas as partes onde são usados tanto os HTML Helpers quanto os Tag Helpers, sempre que for passar um controller deve ser passado apenas o nome sem o sufixo Controller, porque esta informação necessita que seja referente a um controller que esteja nos padrões do Asp.Net.

Para mais informações, tem este curso onde mostra como funciona todo esse raciocínio que o Asp.Net emprega. Também mostra como funciona as páginas HTML ou CSHTML que são chamadas na barra de endereço sem aparecer a extensão.

Espero ter ajudado!