ASP.NET Core 5/Giriş

Vikikitap, özgür kütüphane

Bir ASP.NET Core 5 boş şablonunu MVC'ye çevirmek için;

1) Startup.cs dosyasındaki ConfigureServices metoduna aşağıdaki satırı ekleyin:

services.AddControllersWithViews();

2) Startup.cs dosyasındaki Configure metodunun içindeki

app.UseEndpoints(endpoints =>
{
    endpoints.MapGet("/", async context =>
    {
        await context.Response.WriteAsync("Hello World!");
    });
});

kodlarını silin ve bunların yerine:

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

yazın.

3) Proje klasörüne Controllers, Models ve Views klasörlerini ekleyin. Views klasöründe her controller için ayrı bir alt klasör oluşturun.

Bir action metodunun kendi view'ı dışındaki bir view'ı döndürmesi[değiştir]

Bir action metodu direkt View() metodunu çalıştırırsa Views klasöründeki ilgili controller'a karşılık gelen klasördeki ilgili action'a karşılık gelen view döndürülür. Farklı bir klasördeki ve/veya farklı bir isimdeki view'ı döndürmek için;

  • View() metoduna parametre olarak view ismi verilir (eğer view, çalışması gereken normal view'la aynı klasördeyse),
  • Yolla beraber view ismi verilir (eğer view, çalışması gereken normal view'la aynı klasörde değilse). Yol belirtimi mutlak ve göreli olarak iki şekilde yapılır. Göreli yol gösterimi:
../Product/Index

Çalışması gereken normal view'ın bulunduğu klasörün bir üst klasöründeki Product klasöründeki Index view'ını döndürür.

/Views/Product/Index.cshtml

Mutlak yol gösterimi. Mutlak yol gösteriminde view'ın uzantısının belirtilmesi zorunludur.