1. Wprowadzenie do ASP.NET
  2. Szybki start
  3. Struktura projektu
  4. Tworzenie kontrolerów i akcji
  5. Routing
  6. Modelowanie danych
  7. Widoki RazorViewEngine i TagHelpers
  8. Dostęp do danych
  9. Middleware
  10. Implementacja uwierzytelnienia
  11. Obsługa błędów
  12. Stylowanie aplikacji
  13. Implementacja serwisów RESTful
  14. Implementacja WebSocketów
  15. Testowanie aplikacji
  16. Debugowanie aplikacji
  17. Wdrażanie aplikacji
  18. Integracja z innymi technologiami
  19. Podsumowanie

Routing

Routing w ASP.NET Core to mechanizm, który odpowiada za przetwarzanie żądań HTTP i przekierowywanie ich do odpowiedniego kontrolera i akcji. Routing opiera się na mapowaniu adresu URL żądania na odpowiedni kontroler i akcję.

W ASP.NET Core routing jest skonfigurowany w klasie Startup.cs w metodzie ConfigureServices() za pomocą metody AddControllers() lub AddMvc() w przypadku kontrolerów MVC. Metoda ta dodaje routing do aplikacji i rejestruje kontrolery w aplikacji. Przykładowy kod konfiguracji routing w ASP.NET Core:

								
public void ConfigureServices(IServiceCollection services)
{
  services.AddControllers();

  services.AddRouting(options =>
  {
      options.LowercaseUrls = true;
      options.AppendTrailingSlash = true;
  });
}

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
  // ...

  app.UseRouting();

  app.UseEndpoints(endpoints =>
  {
        endpoints.MapControllers();
  });

  // ...
}
								
						
Wyjaśnienie

W powyższym przykładzie metoda AddControllers() dodaje kontrolery do aplikacji, a metoda AddRouting() dodaje routing i konfiguruje opcje, takie jak "LowercaseUrls" i "AppendTrailingSlash". Metoda UseRouting() konfiguruje middleware routingu, a metoda MapControllers() mapuje adresy URL do akcji kontrolera.

Routing przekazywane żądaniem HTTP

								
[HttpGet("{id}")]
public IActionResult Get(int id)
{
		// ...
}
								
						

Routing w ASP.NET Core opiera się na szablonach adresów URL i parametrach, które mogą być przekazywane z żądaniem HTTP. Na przykład, poniższy kod konfiguruje szablon adresu URL dla akcji "Get" kontrolera "ProductController" z parametrem "id":

Wyjaśnienie

W tym przypadku adres URL będzie miał postać "/Product/{id}", gdzie "{id}" jest parametrem przekazywanym z żądaniem HTTP. Routing w ASP.NET Core automatycznie dopasuje wartość parametru z żądania do parametru akcji "id".

Notatka

Warto zaznaczyć, że routing w ASP.NET Core jest elastyczny i może być dostosowany do potrzeb konkretnego projektu. Dlatego ważne jest, aby zrozumieć, jak działa routing i jak go skonfigurować w swojej aplikacji.