Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Daniel Roth, Rick Anderson ve Shaun Luttin tarafından
Uyarı
ASP.NET Core'un bu sürümü artık desteklenmiyor. Daha fazla bilgi için bkz. .NET ve .NET Core Destek İlkesi. Geçerli sürüm için bu makalenin .NET 9 sürümüne bakın.
ASP.NET Core, modern web uygulamaları oluşturmaya yönelik platformlar arası, yüksek performanslı bir çerçevedir. Bu açık kaynak çerçevesi, geliştiricilerin Windows, macOS ve Linux üzerinde çalışabilen web uygulamaları, hizmetler ve API'ler oluşturmasına olanak tanır. Büyük ölçekli uygulama geliştirme için oluşturulmuştur ve her boyuttaki iş yükünü işleyebilir ve kurumsal düzeyde uygulamalar için sağlam bir seçimdir.
ASP.NET Core ile şunları yapabilirsiniz:
- Web uygulamaları ve hizmetleri, Azure IoT (Nesnelerin İnterneti) uygulamaları ve mobil arka uçlar oluşturun.
- Windows, macOS ve Linux üzerinde tercih ettiğiniz geliştirme araçlarını kullanın.
- Buluta veya şirket içine dağıtın.
- .NET üzerinde çalıştırın.
Neden ASP.NET Core'u seçmelisiniz?
Milyonlarca geliştirici web uygulamaları oluşturmak için ASP.NET 4.x'i kullanıyor veya kullanıyor. ASP.NET Core, ASP.NET 4.x'in daha yalın, daha modüler bir çerçeveye neden olan mimari değişiklikler de dahil olmak üzere yeniden tasarlanmasıdır.
ASP.NET Core aşağıdaki avantajları sağlar:
- Web kullanıcı arabirimi ve web API’leri oluşturmak için birleşik bir öykü.
- Test edilebilirlik için tasarlanmış.
- Blazor JavaScript ile birlikte tarayıcıda C# kullanmanıza olanak tanır. .NET ile yazılmış sunucu tarafı ve istemci tarafı uygulama mantığını paylaşın.
- Razor Sayfalar , sayfa odaklı senaryoları kodlamayı daha kolay ve daha üretken hale getirir.
- Windows, macOS ve Linux üzerinde geliştirme ve çalıştırma olanağı.
- Açık kaynak ve topluluk odaklı.
- Modern, istemci tarafı çerçevelerinin ve geliştirme iş akışlarının tümleştirilmesi.
- gRPC kullanarak Uzaktan Yordam Çağrısı (RPC) hizmetlerini barındırma desteği.
- Buluta hazır, ortam tabanlı bir yapılandırma sistemi.
- Yerleşik bağımlılık enjeksiyonu.
- Basit, yüksek performanslı ve modüler bir HTTP istek işlem hattı.
- Aşağıdakileri barındırabilme özelliği:
- Yan yana sürüm oluşturma.
- Modern web geliştirmeyi basitleştiren araçlar.
ASP.NET Core MVC kullanarak web API'leri ve web kullanıcı arabirimi oluşturma
ASP.NET Core MVC , web API'leri ve web uygulamaları oluşturmaya yönelik özellikler sağlar:
- Model-View-Controller (MVC) deseni, web API'lerinizi ve web uygulamalarınızı test edilebilir hale getirmenize yardımcı olur.
- Blazor, WebAssembly aracılığıyla hem sunucu tarafı işlemeyi hem de istemci tarafı işlemeyi destekleyen C# tabanlı bileşen tabanlı web ui çerçevesi.
- Razor Sayfalar , web kullanıcı arabirimi oluşturmayı daha kolay ve daha üretken hale getiren sayfa tabanlı bir programlama modelidir.
- Razor işaretleme, Sayfalar ve Razor için üretken bir söz dizimi sağlar.
- Etiket Yardımcıları , sunucu tarafı kodunun dosyalarda HTML öğeleri Razor oluşturma ve işlemeye katılmasını sağlar.
- Birden çok veri biçimi ve içerik anlaşması için yerleşik destek, web API'lerinizin tarayıcılar ve mobil cihazlar da dahil olmak üzere çok çeşitli istemcilere ulaşmasını sağlar.
- Model bağlama , HTTP isteklerindeki verileri otomatik olarak eylem yöntemi parametrelerine eşler.
- Model doğrulaması otomatik olarak istemci tarafı ve sunucu tarafı doğrulama gerçekleştirir.
İstemci tarafı geliştirme
ASP.NET Core zengin etkileşimli web kullanıcı arabirimi oluşturmaya yöneliktir Blazor ve ayrıca Angular, React, Vue ve Bootstrap gibi diğer popüler ön uç JavaScript çerçeveleriyle tümleşir. Daha fazla bilgi için bkz. Blazor altındaki ASP.NET Core ve ilgili konular.
ASP.NET Core hedef çerçeveleri
ASP.NET Core 3.x veya üzeri yalnızca .NET'i hedefleyebilir.
.NET'i hedeflemenin çeşitli avantajları vardır ve bu avantajlar her sürümde artar. .NET'in .NET Framework'e göre bazı avantajları şunlardır:
- Platformlar arası. Windows, macOS ve Linux üzerinde çalışır.
- Artan performans
- Eşzamanlı sürümleme
- Yeni API'ler
- Açık kaynak
Önerilen öğrenme yolu
ASP.NET Core uygulamaları geliştirmeye giriş için aşağıdaki öğretici dizisini öneririz:
Geliştirmek veya korumak istediğiniz uygulama türü için bir öğretici izleyin.
Uygulama türü Senaryo Öğretici Web uygulaması İstemci tarafı web kullanıcı arabirimi geliştirme Kullanmaya başlama Blazor Web uygulaması Yeni sunucu tarafı web kullanıcı arabirimi geliştirme Pages'ı kullanmaya Razor başlama Web uygulaması MVC uygulamasını koruma MVC kullanmaya başlama Web API'si RESTful HTTP hizmetleri Web API'si oluşturma† Uzaktan Yordam Çağrısı uygulaması Protokol Arabelleklerini kullanan sözleşme öncelikli hizmetler gRPC hizmetini kullanmaya başlama Gerçek zamanlı uygulama Sunucular ve bağlı istemciler arasında çift yönlü iletişim Kullanmaya başlama SignalR Temel veri erişiminin nasıl yapılacağını gösteren bir öğreticiyi izleyin.
Senaryo Öğretici Yeni geliştirme Blazor Entity Framework Core ile Yeni geliştirme Razor Entity Framework Core içeren sayfalar MVC uygulamasını koruma Entity Framework Core ile MVC Tüm uygulama türleri için geçerli ASP.NET Temel bilgilerine genel bir bakış okuyun.
İlgilenen diğer konular için içindekiler tablosuna göz atın.
† Ayrıca etkileşimli bir web API'si öğreticisi de vardır. Geliştirme araçlarının yerel olarak yüklenmesi gerekmez. Kod tarayıcınızdaki bir Azure Cloud Shell'de çalışır ve curl test için kullanılır.
.NET Framework'ten geçiş
ASP.NET 4.x uygulamalarını ASP.NET Core'a geçirmeye yönelik bir başvuru kılavuzu için bkz. ASP.NET Framework'ten ASP.NET Core'a geçiş.
ASP.NET Core, modern, bulut özellikli, İnternet'e bağlı uygulamalar oluşturmaya yönelik platformlar arası, yüksek performanslı, açık kaynak bir çerçevedir. ASP.NET Core ile şunları yapabilirsiniz:
- Web uygulamaları ve hizmetleri, Azure IoT (Nesnelerin İnterneti) uygulamaları ve mobil arka uçlar oluşturun.
- Windows, macOS ve Linux üzerinde tercih ettiğiniz geliştirme araçlarını kullanın.
- Buluta veya şirket içine dağıtın.
- .NET Core veya .NET Framework üzerinde çalıştırın.
Neden ASP.NET Core'u seçmelisiniz?
Milyonlarca geliştirici web uygulamaları oluşturmak için ASP.NET 4.x'i kullanıyor veya kullanıyor. ASP.NET Core, ASP.NET 4.x sürümünün daha yalın, daha modüler bir çerçeve elde edilmesini sağlayan mimari değişikliklerle yeniden tasarlanmış halidir.
ASP.NET Core aşağıdaki avantajları sağlar:
- Web kullanıcı arabirimi ve web API’leri oluşturmak için birleşik bir öykü.
- Test edilebilirlik için tasarlanmış.
- Blazor JavaScript ile birlikte tarayıcıda C# kullanmanıza olanak tanır. .NET ile yazılmış sunucu tarafı ve istemci tarafı uygulama mantığını paylaşın.
- Razor Sayfalar , sayfa odaklı senaryoları kodlamayı daha kolay ve daha üretken hale getirir.
- Windows, macOS ve Linux üzerinde geliştirme ve çalıştırma olanağı.
- Açık kaynak ve topluluk odaklı.
- Modern, istemci tarafı çerçevelerinin ve geliştirme iş akışlarının tümleştirilmesi.
- gRPC kullanarak Uzaktan Yordam Çağrısı (RPC) hizmetlerini barındırma desteği.
- Buluta hazır, ortam tabanlı bir yapılandırma sistemi.
- Yerleşik bağımlılık enjeksiyonu.
- Basit, yüksek performanslı ve modüler bir HTTP istek işlem hattı.
- Aşağıdakileri barındırabilme özelliği:
- Yan yana sürüm oluşturma.
- Modern web geliştirmeyi basitleştiren araçlar.
ASP.NET Core MVC kullanarak web API'leri ve web kullanıcı arabirimi oluşturma
ASP.NET Core MVC , web API'leri ve web uygulamaları oluşturmaya yönelik özellikler sağlar:
- Model-View-Controller (MVC) deseni, web API'lerinizi ve web uygulamalarınızı test edilebilir hale getirmenize yardımcı olur.
- Razor Sayfalar , web kullanıcı arabirimi oluşturmayı daha kolay ve daha üretken hale getiren sayfa tabanlı bir programlama modelidir.
- Razor işaretleme, Sayfalar ve Razor için üretken bir söz dizimi sağlar.
- Etiket Yardımcıları , sunucu tarafı kodunun dosyalarda HTML öğeleri Razor oluşturma ve işlemeye katılmasını sağlar.
- Birden çok veri biçimi ve içerik anlaşması için yerleşik destek, web API'lerinizin tarayıcılar ve mobil cihazlar da dahil olmak üzere çok çeşitli istemcilere ulaşmasını sağlar.
- Model bağlama , HTTP isteklerindeki verileri otomatik olarak eylem yöntemi parametrelerine eşler.
- Model doğrulaması otomatik olarak istemci tarafı ve sunucu tarafı doğrulama gerçekleştirir.
İstemci tarafı geliştirme
ASP.NET Core, , Blazor, React, Vue ve Bootstrap gibi popüler istemci tarafı çerçeveleri ve kitaplıklarıyla sorunsuz bir şekilde tümleşir. Daha fazla bilgi için bkz. Blazor altındaki ASP.NET Core ve ilgili konular.
.NET Framework'ü hedefleyen ASP.NET Core
ASP.NET Core 2.x, .NET Core'u veya .NET Framework'ü hedefleyebilir. .NET Framework'i hedefleyen ASP.NET Core uygulamaları platformlar arası değildir; yalnızca Windows üzerinde çalışır. Genel olarak, ASP.NET Core 2.x .NET Standard kitaplıklarından oluşur. .NET Standard 2.0 ile yazılan kitaplıklar , .NET Standard 2.0'ı uygulayan herhangi bir .NET platformunda çalışır.
ASP.NET Core 2.x, .NET Standard 2.0 uygulayan .NET Framework sürümlerinde desteklenir:
- .NET Framework'ün en son sürümü önerilir.
- .NET Framework 4.6.1 veya üzeri.
ASP.NET Core 3.0 veya üzeri yalnızca .NET Core üzerinde çalışır. Bu değişiklikle ilgili daha fazla ayrıntı için bkz. ASP.NET Core 3.0'da gelen değişikliklere ilk bakış.
.NET Core hedeflemesinin çeşitli avantajları vardır ve bu avantajlar her yeni sürümle birlikte artmaktadır. .NET Framework'e göre .NET Core'un bazı avantajları şunlardır:
- Platformlar arası. macOS, Linux ve Windows üzerinde çalışır.
- Artan performans
- Eşzamanlı sürümleme
- Yeni API'ler
- Açık kaynak
.NET Framework'ten .NET Core'a API açığını kapatmaya yardımcı olmak için Windows Uyumluluk Paketi , .NET Core'da yalnızca Windows'a özgü binlerce API'yi kullanılabilir hale getirdi. Bu API'ler .NET Core 1.x'te sağlanmamıştı.
Önerilen öğrenme yolu
ASP.NET Core uygulamaları geliştirmeye başlamak için şu öğreticileri ve makaleleri takip etmenizi öneririz:
Geliştirmek veya bakımını yapmak istediğiniz uygulama türü için bir öğretici izleyin.
Uygulama türü Senaryo Öğretici Web uygulaması Yeni proje geliştirmek için Pages'ı kullanmaya Razor başlama Web uygulaması MVC uygulaması yönetmek için MVC kullanmaya başlama Web API'si Web API'si oluşturma† Gerçek zamanlı uygulama Kullanmaya başlama SignalR Temel veri erişiminin nasıl yapılacağını gösteren bir öğreticiyi izleyin.
Senaryo Öğretici Yeni proje geliştirmek için Razor Entity Framework Core içeren sayfalar MVC uygulaması yönetmek için Entity Framework Core ile MVC Tüm uygulama türleri için geçerli ASP.NET Temel bilgilerine genel bir bakış okuyun.
İlgilendiğiniz diğer konular için İçindekiler Tablosu’na göz atın.
Ayrıca tamamen tarayıcıda takip edebileceğiniz bir web API öğreticisi var, yerel bir IDE yüklemesi gerekmez. Kod bir Azure Cloud Shell'de çalışır ve curl test için kullanılır.
.NET Framework'ten geçiş
ASP.NET uygulamalarını ASP.NET Core'a geçirmeye yönelik bir başvuru kılavuzu için bkz. ASP.NET Framework'ten ASP.NET Core'a geçiş.
Örnek indirme
Çoğu makale ve öğretici örnek koda bağlantılar içerir.
- ASP.NET deposu zip dosyasını indirin.
- Dosyanın sıkıştırmasını açın
AspNetCore.Docs-main.zip
. - Bir makalenin sıkıştırması açılmış depodaki örnek uygulamasına erişmek için makalenin örnek bağlantısındaki URL'yi kullanarak örneğin klasörüne gitmenize yardımcı olun. Genellikle makalenin örnek bağlantısı makalenin üst kısmında Örnek kodu görüntüle veya indir bağlantı metniyle gösterilir.
Örnek kodda ön işlemci yönergeleri
Birden çok senaryoyu göstermek için örnek uygulamalar, örnek kodun #define
farklı bölümlerini seçmeli olarak derlemek ve çalıştırmak için ve #if-#else/#elif-#endif
önişlemci yönergelerini kullanır. Bu yaklaşımı kullanan örnekler için, çalıştırmak istediğiniz senaryoyla ilişkili simgeyi tanımlamak için C# dosyalarının en üstündeki yönergesini ayarlayın #define
. Bazı örneklerin bir senaryoyu çalıştırmak için birden çok dosya üst kısmında sembol tanımlaması gerekir.
Örneğin, aşağıdaki simge listesi #define
dört senaryonun kullanılabilir olduğunu gösterir (her simge için bir senaryo). Geçerli örnek yapılandırması TemplateCode
senaryosunu çalıştırır:
#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode
Örneği ExpandDefault
senaryosunu çalıştıracak şekilde değiştirmek için ExpandDefault
simgesini tanımlayın ve kalan simgeleri açıklama satırı yapılmış şekilde bırakın:
#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode
Kod bölümlerini seçmeli olarak derlemek için C# önişlemci yönergelerini kullanma hakkında daha fazla bilgi için bkz. #define (C# Başvurusu) ve #if (C# Başvurusu).
Hataya neden olan değişiklikler ve güvenlik önerileri
Uyumsuzluk yaratan değişiklikler ve güvenlik tavsiyeleri Duyurular deposunda bildirilir. Etiket filtresi seçilerek duyurular belirli bir sürümle sınırlandırılabilir.
Sonraki adımlar
Daha fazla bilgi edinmek için aşağıdaki kaynaklara bakın:
- Kullanmaya başlama Blazor
- ASP.NET Core kullanmaya başlama
- Visual Studio ile Azure'da ASP.NET Core uygulaması yayımlama
- ASP.NET Temel bilgiler
- Haftalık ASP.NET topluluğu toplantısı, ekibin ilerlemesi ve planlarını kapsar. Yeni bloglara ve üçüncü taraf yazılıma yer verilir.
ASP.NET Core