Skip to content

Files

Latest commit

0a95196 · May 22, 2018

History

History

rotas

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
May 8, 2018

O ASP.NET Core MVC utiliza um sistema de roteamento.

Esse roteamento mapeia URL's tornando-as amigáveis e pesquisáveis.

Facilita para o uso de SEO (Search Engine Optimization).

Utilização padrão de rotas:

routes.MapRoute(
    name: "Default",
    template: "{controller=Home}/{action=Index}/{id?}"
);

Ao navegarmos para a url http://localhost:5000

![Home]({{ 'rotas/home.jpg | relative_url }})

Roteamento por atributo:

[Route("api/[controller]")]
public class ProductsController : Controller
{
  [HttpGet("{id}")]
  public IActionResult GetProduct(int id)
  {
    ...
  }
}

A rota padrão diz que o formato da url deve ser:

/<nome da controladora>/<nome da ação a ser executada>/<parâmetro opcional>

Por exemplo ao criar um projeto do tipo MVC:

dotnet new mvc -o Route

e executá-lo:

dotnet run -p Route/Route.csproj

Ao navegarmos para a url http://localhost:5000 vemos a página Home normalmente.

Caso alteramos a rota padrão no método Configure do arquivo Startup.cs, conforme abaixo

app.UseMvc(routes =>
{
    routes.MapRoute(
        name: "default",
        template: "{controller=Products}/{action=Index}/{id?}");
});

Pare a execução anterior com ctrl+c e rode novamente

dotnet run -p Route/Route.csproj

Ao navegarmos para a url http://localhost:5000 vemos a página de erro 404.

Porém se navegarmos para a url http://localhost:5000/Home vemos a página Home novamente.