Aracılığıyla paylaş


​.NET Core 2.0’deki yenilikler

.NET Core 2.0, aşağıdaki alanlarda iyileştirmeler ve yeni özellikler içerir:

Araçlar

dotnet geri yükleme örtük olarak çalışır

.NET Core'un önceki sürümlerinde, dotnet new komutuyla yeni bir proje oluşturduktan hemen sonra ve projenize her yeni bağımlılık eklediğinizde bağımlılıkları indirmek için dotnet restore komutunu çalıştırmanız gerekiyordu.

, , dotnet restoreve dotnet newgibi dotnet builddotnet rundotnet testdotnet publishgeri yükleme gerektiren tüm komutlar tarafından örtük olarak çalıştırıldığından, komutunu çalıştırmanız dotnet pack gerekmez. Örtük geri yüklemeyi devre dışı bırakmak için seçeneğini kullanın --no-restore .

Komutudotnet restore, Azure DevOps Services'teki sürekli tümleştirme derlemeleri veya geri yüklemenin ne zaman gerçekleştiğini açıkça denetlemesi gereken derleme sistemleri gibi açıkça geri yüklemenin anlamlı olduğu bazı senaryolarda hala yararlıdır.

NuGet akışlarını yönetme hakkında bilgi için belgelere dotnet restore bakın.

Anahtarı , , dotnet restore, --no-restorenew, runve build komutlarına geçirerek publish otomatik çağrısını packtestda devre dışı bırakabilirsiniz.

.NET Core 2.0'a yeniden hedefleme

.NET Core 2.0 SDK'sı yüklüyse, .NET Core 1.x'i hedefleyen projeler .NET Core 2.0'a yeniden hedeflenebilir.

.NET Core 2.0'a yeniden hedeflemek için, öğesinin (veya <TargetFramework> proje dosyanızda birden fazla hedefiniz varsa öğesinin<TargetFrameworks>) değerini 1.x'ten 2.0'a değiştirerek proje dosyanızı düzenleyin:

<PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>
 </PropertyGroup>

.NET Standard kitaplıklarını da aynı şekilde .NET Standard 2.0'a yeniden hedefleyebilirsiniz:

<PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
 </PropertyGroup>

Projenizi .NET Core 2.0'a geçirme hakkında daha fazla bilgi için bkz . ASP.NET Core 1.x'ten ASP.NET Core 2.0'a geçiş.

Dil desteği

.NET Core 2.0, C# ve F# desteğinin yanı sıra Visual Basic'i de destekler.

Visual Basic

Sürüm 2.0 ile .NET Core artık Visual Basic 2017'yi destekliyor. Visual Basic'i kullanarak aşağıdaki proje türlerini oluşturabilirsiniz:

  • .NET Core konsol uygulamaları
  • .NET Core sınıf kitaplıkları
  • .NET Standart sınıf kitaplıkları
  • .NET Core birim testi projeleri
  • .NET Core xUnit test projeleri

Örneğin, Visual Basic "Merhaba Dünya" uygulaması oluşturmak için komut satırından aşağıdaki adımları uygulayın:

  1. Bir konsol penceresi açın, projeniz için bir dizin oluşturun ve bunu geçerli dizin yapın.

  2. komutunu dotnet new console -lang vbgirin.

    komutu, dosya uzantısına sahip bir .vbproj proje dosyası ve Program.vb adlı bir Visual Basic kaynak kodu dosyası oluşturur. Bu dosya, konsol penceresine "Merhaba Dünya!" dizesini yazmak için kaynak kodu içerir.

  3. komutunu dotnet rungirin. .NET CLI, konsol penceresinde "Merhaba Dünya!" iletisini görüntüleyen uygulamayı otomatik olarak derler ve yürütür.

C# 7.1 desteği

.NET Core 2.0, C# 7.1'i destekler ve aşağıdakiler de dahil olmak üzere bir dizi yeni özellik ekler:

  • Uygulama Main giriş noktası olan yöntemi zaman uyumsuz anahtar sözcükle işaretlenebilir.
  • Çıkarsanan demet adları.
  • Varsayılan ifadeler.

Platform geliştirmeleri

.NET Core 2.0, .NET Core'u yüklemeyi ve desteklenen işletim sistemlerinde kullanmayı kolaylaştıran bir dizi özellik içerir.

Linux için .NET Core tek bir uygulamadır

.NET Core 2.0, birden çok Linux dağıtımında çalışan tek bir Linux uygulaması sunar. Dağıtıma özgü bir Linux uygulamasını indirmeniz için .NET Core 1.x gereklidir.

Linux'u tek bir işletim sistemi olarak hedefleyen uygulamalar da geliştirebilirsiniz. .NET Core 1.x, her Linux dağıtımlarını ayrı ayrı hedeflemeniz için gereklidir.

Apple şifreleme kitaplıkları desteği

macOS üzerinde .NET Core 1.x, OpenSSL araç setinin şifreleme kitaplığını gerektiriyor. .NET Core 2.0, Apple şifreleme kitaplıklarını kullanır ve OpenSSL gerektirmez, bu nedenle artık yüklemeniz gerekmez.

API değişiklikleri ve kitaplık desteği

.NET Standard 2.0 desteği

.NET Standard, standardın bu sürümüyle uyumlu .NET uygulamalarında kullanılabilir olması gereken, sürümü oluşturulmuş bir API kümesini tanımlar. .NET Standard, kitaplık geliştiricilerine yöneliktir. Her .NET uygulamasında .NET Standard sürümünü hedefleyen bir kitaplığın kullanabileceği işlevselliği garanti etmeyi amaçlar. .NET Core 1.x, .NET Standard sürüm 1.6'yı destekler; .NET Core 2.0 en son sürüm olan .NET Standard 2.0'ı destekler. Daha fazla bilgi için bkz . .NET Standard.

.NET Standard 2.0, .NET Standard 1.6'dakinden 20.000'den fazla API içerir. Bu genişletilmiş yüzey alanının büyük bölümü, .NET Framework ve Xamarin için ortak olan API'leri .NET Standard'a eklemekten kaynaklanmaktadır.

.NET Standard 2.0 sınıf kitaplıkları , .NET Standard 2.0'da bulunan API'leri çağırmaları koşuluyla .NET Framework sınıf kitaplıklarına da başvurabilir. .NET Framework kitaplıklarının yeniden derlenmemesi gerekmez.

.NET Standard 1.6'nın son sürümünden bu yana .NET Standard'a eklenen API'lerin listesi için bkz . .NET Standard 2.0 ile 1.6.

Genişletilmiş yüzey alanı

.NET Core 2.0'da kullanılabilen toplam API sayısı ,NET Core 1.1 ile karşılaştırıldığında ikiden fazladır.

Windows Uyumluluk Paketi ile .NET Framework'ten taşıma da çok daha basit hale geldi.

.NET Framework kitaplıkları desteği

.NET Core kodu, mevcut NuGet paketleri de dahil olmak üzere mevcut .NET Framework kitaplıklarına başvurabilir. Kitaplıkların .NET Standard'da bulunan API'leri kullanması gerektiğini unutmayın.

Visual Studio ile tümleştirme

Visual Studio 2017 sürüm 15.3, .NET Core geliştiricileri için bir dizi önemli geliştirme sunar.

.NET Core uygulamalarını ve .NET Standart kitaplıklarını yeniden hedefleme

.NET Core 2.0 SDK'sı yüklüyse, .NET Core 1.x projelerini .NET Core 2.0 ve .NET Standard 1.x kitaplıklarına .NET Standard 2.0'a yeniden hedefleyebilirsiniz.

Visual Studio'da projenizi yeniden hedeflemek için, projenin özellikler iletişim kutusunun Uygulama sekmesini açar ve Hedef çerçeve değerini .NET Core 2.0 veya .NET Standard 2.0 olarak değiştirirsiniz. Ayrıca projeye sağ tıklayıp *.csproj dosyasını düzenle seçeneğini belirleyerek de değiştirebilirsiniz. Daha fazla bilgi için bu konunun önceki bölümlerinde yer alan Araçlar bölümüne bakın.

.NET Core için Live Unit Testing

Kodunuzu her değiştirdiğinizde, Canlı Birim Testi etkilenen birim testlerini otomatik olarak arka planda çalıştırır ve sonuçları ve kod kapsamını Visual Studio ortamında canlı olarak görüntüler. .NET Core 2.0 artık Canlı Birim Testi'ni destekliyor. Daha önce, Canlı Birim Testi yalnızca .NET Framework uygulamalarında kullanılabilirdi.

Daha fazla bilgi için bkz . Visual Studio ile Canlı Birim Testi ve Canlı Birim Testi SSS.

Birden çok hedef çerçeve için daha iyi destek

Birden çok hedef çerçeve için bir proje oluşturuyorsanız, artık üst düzey menüden hedef platformu seçebilirsiniz. Aşağıdaki şekilde, SCD1 adlı bir proje 64 bit macOS X 10.11 (osx.10.11-x64) ve 64 bit Windows 10/Windows Server 2016'yı () hedeflemektedirwin10-x64. Proje düğmesini seçmeden önce hedef çerçeveyi seçebilirsiniz. Bu örnekte hata ayıklama derlemesini çalıştırabilirsiniz.

Proje oluştururken hedef çerçeve seçimini gösteren ekran görüntüsü.

.NET Core SDK'ları için yan yana destek

Artık .NET Core SDK'sını Visual Studio'nun bağımsız olarak yükleyebilirsiniz. Bu, Visual Studio'nun tek bir sürümünün .NET Core'un farklı sürümlerini hedefleyen projeler oluşturmasını mümkün kılar. Daha önce Visual Studio ve .NET Core SDK'sı sıkı bir şekilde bağlanıyordu; SDK'nın belirli bir sürümü, Visual Studio'nun belirli bir sürümüne eşlik etti.

Belge geliştirmeleri

.NET Uygulama Mimarisi

.NET Uygulama Mimarisi , derlemek için .NET kullanırken rehberlik, en iyi yöntemler ve örnek uygulamalar sağlayan bir e-kitap kümesine erişmenizi sağlar:

Ayrıca bkz.