C# konsol uygulaması şablonu üst düzey deyimler oluşturur
.NET 6'dan başlayarak, yeni C# konsol uygulamaları için proje şablonu Program.cs dosyasında aşağıdaki kodu oluşturur:
// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");
Yeni çıkış, bir program için yazmanız gereken kodu basitleştiren son C# özelliklerini kullanır. .NET 5 ve önceki sürümler için konsol uygulaması şablonu aşağıdaki kodu oluşturur:
using System;
namespace MyApp
{
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
Önceki kodda gerçek ad alanı proje adına bağlıdır.
Bu iki form aynı programı temsil edilir. Her ikisi de C# dilinde geçerlidir. Daha yeni sürümü kullandığınızda, yalnızca Main
yönteminin gövdesini yazmanız gerekir. Derleyici, giriş noktası yöntemiyle bir Program
sınıfı oluşturur ve tüm üst düzey deyimlerinizi bu yönteme yerleştirir. Oluşturulan metodun adı Main
değildir, kodunuzun doğrudan başvuramayacağı bir uygulama ayrıntısıdır. Diğer program öğelerini eklemeniz gerekmez, derleyici bunları sizin için oluşturur. C# Kılavuzu'nun temel bilgileri bölümünde
.NET 6+ şablonlarını kullanacak şekilde güncelleştirilmeyen öğreticilerle çalışmak için iki seçeneğiniz vardır:
- Özellik eklerken yeni üst düzey deyimler ekleyerek yeni program stilini kullanın.
-
Program
sınıfı veMain
yöntemiyle yeni program stilini eski stile dönüştürün.
Eski şablonları kullanmak istiyorsanız, bu makalenin ilerleyen bölümlerinde eski program stilini kullanma bölümüne bakın.
Yeni program stilini kullanma
Yeni programı daha basit hale getiren özellikler,,
üst düzey deyimleri Main
yönteminin içindeki ifadeleri içerdiğini düşünebilirsiniz.
Geleneksel stilde Main
yönteminize daha fazla deyim eklemek gibi, programa daha fazla deyim ekleyebilirsiniz. public
veya protected
) içeremez.
Uygulamanızı oluşturan kodu basitleştirmek hem üst düzey deyimler hem de örtük Main
yönteminin açılış ve kapanış parantezleri arasında olduğunu hayal edebilirsiniz.
Eski biçimi kullanmayı tercih ederseniz, bu makaledeki ikinci örnekte yer alan kodu kopyalayabilir ve öğreticiye daha önce olduğu gibi devam edebilirsiniz.
Öğretici araştırmasında üst düzey deyimlerhakkında daha fazla bilgi edinebilirsiniz.
Örtük using
yönergeleri
Örtük
using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
Diğer uygulama türleri, bu uygulama türleri için ortak olan daha fazla ad alanı içerir.
Örtük olarak dahil olmayan using
yönergelerine ihtiyacınız varsa, bunları üst düzey deyimleri içeren .cs dosyasına veya diğer .cs dosyalarına ekleyebilirsiniz. Bir uygulamadaki tüm
Örtük using
yönergelerini devre dışı bırakma
Bu davranışı kaldırmak ve projenizdeki tüm ad alanlarını el ile denetlemek istiyorsanız, aşağıdaki örnekte gösterildiği gibi <PropertyGroup>
öğesindeki proje dosyanıza <ImplicitUsings>disable</ImplicitUsings>
ekleyin:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<ImplicitUsings>disable</ImplicitUsings>
</PropertyGroup>
</Project>
Genel using
yönergeleri
<Using>
öğesi eklenerek veya bir kod dosyasına global using
yönergesi eklenerek eklenebilir.
Ayrıca proje dosyanıza using
yönergeleri özelliği <ImplicitUsings>enable</ImplicitUsings>
ile açıksa, aşağıdaki <Using>
öğesinin eklenmesi, örtük olarak içeri aktarılanlardan System.Net.Http
ad alanını kaldırır:
<ItemGroup>
<Using Remove="System.Net.Http" />
</ItemGroup>
Eski program stilini kullanma
.NET SDK 6.0.300'den başlayarak, console
şablonunun --use-program-main
seçeneği vardır. Üst düzey deyimleri kullanmayan ve Main
yöntemi olan bir konsol projesi oluşturmak için bunu kullanın.
dotnet new console --use-program-main
Oluşturulan Program.cs
aşağıdaki gibidir:
namespace MyProject;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
}
}
Visual Studio'da eski program stilini kullanma
Yeni bir proje oluşturduğunuzda, kurulum adımları Ek bilgiler kurulum sayfasına gider. Bu sayfada Üst düzey deyimleri kullanma onay kutusunu seçin.
Projeniz oluşturulduktan sonra
Program.cs
içeriği aşağıdaki gibidir:namespace MyProject; class Program { static void Main(string[] args) { Console.WriteLine("Hello, World!"); } }
Not
Visual Studio, projeyi aynı şablona dayalı olarak bir sonraki oluşturduğunuzda seçeneklerin değerini korur, bu nedenle varsayılan olarak bir sonraki Konsol Uygulaması projesi oluşturduğunuzda "Üst düzey deyimleri kullanma" onay kutusu işaretli olacaktır.
Program.cs
dosyasının içeriği, genel Visual Studio metin düzenleyicisi ayarlarında veya EditorConfig
dosyasında tanımlanan kod stiliyle eşleşecek şekilde farklı olabilir.
Daha fazla bilgi için bkz. EditorConfig ve