Erkan KESER

Asp.net Core - Başlangıç

Asp.net Core teknolojisi için temel bilgiler yer alır.

1. Giriş ve Temel Kavramlar

1.1 ASP.NET Core Nedir?

ASP.NET Core, Microsoft tarafından geliştirilen açık kaynaklı, platformlar arası (cross-platform) bir web framework'üdür. Modern web uygulamaları, API'ler ve mikroservisler geliştirmek için kullanılır. ASP.NET Core, yüksek performans, modüler yapı ve esneklik sunar.

Özetle:

  • ASP.NET Core, modern, açık kaynaklı ve platformlar arası bir web framework'üdür.
  • MVC (Model-View-Controller) mimarisi kullanır.
  • .NET Core, Windows, macOS ve Linux'ta çalışabilir.
ASP.NET Core, önceki ASP.NET sürümlerinden farklı olarak tamamen yeniden yazılmıştır. Bu sayede hem Windows hem de Linux/macOS gibi platformlarda çalışabilir. Ayrıca, Docker gibi container teknolojileriyle uyumludur ve modern web uygulamalarının ihtiyaçlarını karşılamak için optimize edilmiştir.

1.2 Geliştirme Ortamı Kurulumu

.NET SDK Kurulumu:

.NET SDK sitesinden .NET SDK'sını indirip kurun.

Kurulumu kontrol etmek için terminalde şu komutu çalıştırın:

dotnet --version

VS Code Kurulumu:

Visual Studio Code'u sitesinden indirip kurun.

Gerekli eklentileri yükleyin: (uygulama yazarken kolaylık sağlar.)

  • Live Server: Statik dosyaları hızlıca test etmek için (isteğe bağlı).
  • .Net Core Extension Pack (Simgesi Sırt Çantası Şeklinde): içerisinde 30'u aşkın eklenti var. Hepsi birlikte kuruluyor. 

2. İlk ASP.NET Core Projesi

2.1 Yeni Proje Oluşturma

Terminali (Komut Satırını) Açın:

Terminali(Komut Satırını) Windows'tan veya visual studio code editörü için açın. Ben uygulamalarımda visual studio code editörünü kullanacağım. Bunun için:

VS Code'da `Ctrl + `` (ters kesme) tuşuyla terminali açın.

Yeni Proje Oluştur:

Terminalde(Komut Satırında) proje dizinine gidin ve komutu çalıştırın:

dotnet new mvc -n ilkProje

Bu komut, ilkProje adında yeni bir ASP.NET Core MVC projesi oluşturur. -n new kelimesini ifade eder ve yeni bir proje oluşturmak için kullanır. -o open kelimesini ifade eder varsa projeyi açar yoksa yeni bir oluşturur.

Proje Klasörünü Açın:

Terminalde aşağıdaki komutla proje klasörüne gidin:

cd ilkProje

Projeyi Çalıştırın:

Terminalde aşağıdaki komutu çalıştırın:

dotnet run
veya
dotnet watch

Proje çalıştığında, terminalde https://localhost:5001 veya http://localhost:5000 gibi bir URL göreceksiniz.

Tarayıcıda Açın:

Genel otomatik tarayıcıda açılacaktır. Eğer açılmazsa bu URL'yi tarayıcınıza yapıştırın ve varsayılan ASP.NET Core MVC sayfasını görün.

3.Proje Yapısı

Örnek Proje Yapısını inceleyelim.

ilkProje/
├── Controllers/
│   └── HomeController.cs
├── Views/
│   └── Home/
│       └── Index.cshtml
├── Models/
│   └── User.cs
├── wwwroot/
│   ├── css/
│   ├── js/
│   └── images/
├── appsettings.json
└── Program.cs

ASP.NET Core projesi oluşturduğunuzda, yukarıdaki temel dosya ve klasörlerle karşılaşırız: Bu dosya ve klasörlerin anlamlarını inceleyelim.

Program.cs: Uygulamanın başlangıç noktasıdır. Burada middleware'ler ve servisler tanımlanır.

appsettings.json: Uygulama ayarlarını (connection string, loglama vb.) içeren JSON dosyası.

Controllers: MVC pattern'inde controller'lar bulunur.

Views: Razor view'leri (HTML + C#) bu klasörde yer alır.

Models: Veritabanı modelleri tanımlanır.

wwwroot: Statik dosyalar (CSS, JS, resimler) bulunur.

Örnek Uygulama: Basit Bir Merhaba Dünya Sayfası

Açtığımız projeyi basit bir örnekle bitirelim.

Controller Oluşturun:

Controllers klasörüne sağ tıklayıp New File seçeneğiyle HomeController.cs dosyasını oluşturun.

Aşağıdaki kodu ekleyin:

public class HomeController : Controller
{
    public IActionResult Index()
    {
        ViewBag.Message = "Merhaba Dünya!";
        return View();
    }
}

View Oluşturun:

Views klasörü altında Home adında bir klasör oluşturun.

Home klasörüne sağ tıklayıp New File seçeneğiyle Index.cshtml dosyasını oluşturun.

Aşağıdaki kodu ekleyin:

<h1>@ViewBag.Message</h1>
<p>Bugünün tarihi: @DateTime.Now.ToShortDateString()</p>

Projeyi Çalıştırın:

dotnet watch

Tarayıcıda https://localhost:5001/Home/Index adresine gidin.

"Merhaba Dünya!" mesajını ve bugünün tarihini göreceksiniz.