dotnet run

Bu makale: ✔️ .NET 6 SDK ve sonraki sürümler için geçerlidir

Veri Akışı Adı

dotnet run - Açık derleme veya başlatma komutları olmadan kaynak kodu çalıştırır.

Özet

dotnet run [<applicationArguments>]
  [-a|--arch <ARCHITECTURE>] [--artifacts-path <ARTIFACTS_DIR>]
  [-c|--configuration <CONFIGURATION>] [--disable-build-servers]
  [-e|--environment <KEY=VALUE>] [--file <FILE_PATH>]
  [-f|--framework <FRAMEWORK>] [--force] [--interactive]
  [-lp|--launch-profile <NAME>] [--no-build] [--no-cache]
  [--no-dependencies] [--no-launch-profile] [--no-restore] [--os <OS>]
  [-p|--property:<PROPERTYNAME>=<VALUE>]
  [--project <PATH>] [-r|--runtime <RUNTIME_IDENTIFIER>]
  [--sc|--self-contained] [--tl:[auto|on|off]] [-v|--verbosity <LEVEL>]
  [[--] [application arguments]]

dotnet run -h|--help

Açıklama

komutu, dotnet run uygulamanızı tek bir komutla kaynak koddan çalıştırmak için uygun bir seçenek sağlar. Komut satırından hızlı yinelemeli geliştirme için kullanışlıdır. komutu, kodu derlemek dotnet build için komutuna bağlıdır. Derlemeye yönelik tüm gereksinimler de geçerlidir dotnet run .

Çıkış dosyaları varsayılan konuma (olan bin/<configuration>/<target>) yazılır. Örneğin, bir netcoreapp2.1 uygulamanız varsa ve çalıştırıyorsanız dotnet run, çıktı içine bin/Debug/netcoreapp2.1yerleştirilir. Dosyaların üzerine gerektiği gibi yazılır. Geçici dosyalar dizine obj yerleştirilir.

Proje birden çok çerçeve belirtiyorsa, bu seçenek çerçeveyi belirtmek için kullanılmadığı sürece yürütülürken dotnet run-f|--framework <FRAMEWORK> hata oluşur.

komutu dotnet run , derlenmiş derlemeler değil projeler bağlamında kullanılır. Bunun yerine çerçeveye bağımlı bir uygulama DLL'sini çalıştırmaya çalışıyorsanız, dotnet komutunu komut olmadan kullanmanız gerekir. Örneğin, komutunu çalıştırmak myapp.dlliçin şunu kullanın:

dotnet myapp.dll

dotnet sürücüsü hakkında daha fazla bilgi için bkz. .NET CLI'ya genel bakış.

Uygulamayı çalıştırmak için komutu, dotnet run NuGet önbelleğinden paylaşılan çalışma zamanının dışında olan uygulamanın bağımlılıklarını çözümler. Önbelleğe alınmış bağımlılıklar kullandığından, uygulamaları üretim ortamında çalıştırmak için kullanılması dotnet run önerilmez. Bunun yerine komutunu oluşturun ve yayımlanan çıkışı dağıtın.

Örtük geri yükleme

, , 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 .

komutu, Azure DevOps Services veya geri yüklemenin ne zaman gerçekleştiğini açıkça denetlemesi gereken derleme sistemlerinde continuous tümleştirme derlemeleri gibi açıkça geri yüklemenin anlamlı olduğu bazı senaryolarda hala kullanışlıdır.

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

Bu komut, uzun biçimde geçirildiğinde (örneğin, dotnet restore) seçenekleri destekler--source. gibi -skısa form seçenekleri desteklenmez.

İş yükü bildirimi indirmeleri

Bu komutu çalıştırdığınızda, iş yükleri için reklam bildirimlerini zaman uyumsuz bir arka plan indirme işlemi başlatır. Bu komut tamamlandığında indirme işlemi hala çalışıyorsa indirme durdurulur. Daha fazla bilgi için bkz . Reklam bildirimleri.

Profilleri başlatma

Başlatma profilleri, geliştirme sırasında bir uygulamanın nasıl dotnet run başlatıldığını yapılandırıyor. SDK stilinde bir proje için ayarları içine Properties/launchSettings.jsonyerleştirin. Visual Basic projeleri bunun yerine kullanırMy Project/launchSettings.json.

Dosya tabanlı uygulamalar, kaynak dosyanın yanındaki bir [ApplicationName].run.json dosyayı kullanabilir. Dosya arama sırası ve örnekleri için bkz. Dosya tabanlı uygulamalar için profilleri başlatma.

Başlatma ayarları dosyası üst düzey profiles bir nesne içerir. içindeki profiles her özellik adlandırılmış bir profil tanımlar:

{
  "profiles": {
    "Local": {
      "commandName": "Project",
      "commandLineArgs": "--input sample.txt",
      "dotnetRunMessages": true,
      "environmentVariables": {
        "APP_MODE": "local"
      }
    }
  }
}

.NET SDK başlatma ayarları ayrıştırıcısı JSON açıklamalarını ve sondaki virgülleri kabul eder.

Profil seçin

Adlandırılmış bir profil seçmek için kullanın --launch-profile <NAME> . Ad eşleşmesi büyük/küçük harfe duyarlı değildir. Yalnızca büyük/küçük harfe göre farklılık gösteren profil adları belirsizdir ve bir hata oluşturur.

Bir ad belirtmezseniz, dotnet run desteklediği ilk profili dosya sırasına commandName göre seçer. Başlatma ayarları dosyasını atlamak için kullanın --no-launch-profile .

dotnet run Bir profil uygulandığında, başlatılan işlemde seçilen profil adına ayarlarDOTNET_LAUNCH_PROFILE. Daha sonraki bir ortam değişkeni kaynağı değeri geçersiz kılabilir.

Desteklenen profil türleri

.NET SDK'sı için dotnet runbu commandName değerleri destekler. Değerler büyük/küçük harfe duyarlıdır.

commandName Behavior
Project Projeyi oluşturur ve proje tarafından üretilen komutu başlatır.
Executable tarafından executablePathbelirtilen komutu başlatır. belirtmezseniz --no-build, dotnet run yine de önce projeyi derler.

Ortak özellikler

dotnet run desteklenen her iki profil türü için de şu özellikleri tanır:

dotnet run %NAME% desteklenen dize değerlerinde ortam değişkeni başvurularını genişletir. .NET 11 ve sonraki sürümlerde, Visual Studio ile aynı belirteç değişimini kullanarak işlemi başlatmak için kullandığı değerlerdeki MSBuild özellik başvurularını da genişletir. Kabuk stili $NAME başvuruları genişletmez.

Mülkiyet Behavior
commandLineArgs Başlatılan işlem için bağımsız değişkenleri belirtir. Komut satırındaki açık uygulama bağımsız değişkenleri önceliklidir. Project Profil için, project tarafından sağlanan bağımsız değişkenler de önceliklidir.
environmentVariables Başlatılan işlem için ortam değişkenlerini belirtir. Profil değerleri devralınan ve SDK tarafından oluşturulan ortam değişkenlerini geçersiz kılar ve -e\|--environment değerler profil değerlerini geçersiz kılar.
dotnetRunMessages olduğundatrue, projeyi derlemeden önce dotnet run yazdırırBuilding.... Varsayılan değer: false. Bu özellik başlatma ayarları dosyasını tanımlayan iletiyi denetlemez.

Ortam değişkeni formuna sahip geliştirme zamanı çalışma zamanı yapılandırma ayarlarını uygulamak için kullanın environmentVariables . Örneğin, bir profil gibi DOTNET_gcServerGC ayarlarını yapabilir. Kullanılabilir ayarlar, ortam değişkeni adları ve öncelik kuralları için bkz. .NET çalışma zamanı yapılandırma ayarları ve Atık toplama için çalışma zamanı yapılandırma seçenekleri.

Her çalışma zamanı ayarının ortam değişkeni biçimi olmaz. Bir uygulamayı başlatma profilinden bağımsız olarak yapılandırmak için, projede bir MSBuild özelliği veya RuntimeHostConfigurationOption öğesi kullanın ya da bir runtimeconfig.template.json dosya kullanın. Bazı ayarlar ile AppContext.SetSwitchkodda da değiştirilebilir. Bu mekanizmalar uygulamanın çalışma zamanı yapılandırmasını oluşturur veya değiştirir; bunlar ek launchSettings.json özellikler değildir.

Project Özellikler

dotnet run olduğunda commandNameProjectbu ek özellikleri tanır:

Mülkiyet Behavior
applicationUrl Başlatılan işlemde ayarlar ASPNETCORE_URLS . ASPNETCORE_URLS veya içindeki environmentVariables-e\|--environment bir değer önceliklidir.
launchBrowser Başlatma aracına tarayıcının açılıp açılmayacağını bildirir. dotnet run bu özelliği ayrıştırılmış profilde tutar ancak tarayıcı açmaz.
launchUrl Başlatma aracına hangi URL'nin açıldığını bildirir. dotnet run bu özelliği ayrıştırılmış profilde tutar, ancak bir tarayıcı açmaz veya URL'yi kullanmaz.

Davranış applicationUrl ASP.NET Core destekler, ancak başlatma profilleri ve diğer ortak özellikler, çalıştırılabilir SDK stilindeki .NET projelerde geçerlidir.

Executable Özellikler

dotnet run olduğunda commandNameExecutablebu ek özellikleri tanır:

Mülkiyet Behavior
executablePath Required. Başlatacak işlemi belirtir. SDK desteklenen değişken başvurularını genişletir, ancak başlatma ayarları dosyasında göreli bir değeri çözümlemez. İşletim sisteminin bulabileceği mutlak bir yol veya komut kullanın.
workingDirectory Optional. Başlatılan işlem için çalışma dizinini belirtir. SDK, desteklenen değişken başvurularını genişletir ve başlatma ayarları dosyasını içeren dizinle ilgili bir yolu çözümler. Özelliğini atlarsanız, çalışma dizini varsayılan olarak projeyi veya dosya tabanlı uygulamayı içeren dizine ayarlır.

Visual Studio ve hata ayıklayıcı uzantıları

launchSettings.json paylaşılan bir giriş biçimidir, ancak her tüketici hangi değerlerin desteklendiğine ve bunların nasıl yorumlaneceğine karar verir. Visual Studio, hata ayıklayıcılar ve diğer araçlar değerinden dotnet rundaha fazla commandName değer ve özellik tanıyabilir.

Aşağıdaki tablo, sözleşmeyi dotnet run Visual Studio'daki ortak .NET proje sistemi davranışıyla karşılaştırır:

Ayar veya davranış dotnet run Visual Studio
Desteklenen profil türleri Project ve Executabledestekler. Project, Executableve boş commandNamebir destekler. Yüklü proje sistemi uzantıları başka profil türleri ekleyebilir.
Değişken genişletme %NAME% Ortam değişkeni başvurularını genişletir. .NET 11 ve sonraki sürümlerde, işlemi başlatmak için kullandığı değerlerdeki MSBuild özellik başvurularını da genişletir. , , commandLineArgs, workingDirectorylaunchUrl, ortam değişkeni değerleri ve dize değerli uzantı ayarlarında ortam değişkenlerini ve MSBuild özelliklerini executablePathgenişletir.
commandLineArgs için Project Profil değerini yalnızca proje çalıştırma bağımsız değişkenlerini sağlamadığında ve komut satırında uygulama bağımsız değişkenlerini geçirmediğinizde kullanır. Profil değerini projedeki çalıştırma bağımsız değişkenlerine ekler.
workingDirectory için Project özelliğini yoksayar. özelliğini destekler. Göreli yol, proje dizinine göredir.
workingDirectory için Executable Göreli yol, başlatma ayarları dosyasını içeren dizine göredir. Atlanırsa, yol varsayılan olarak proje veya dosya tabanlı uygulama dizini olur. Göreli yol, proje dizinine göredir. Belirtilmezse, yol varsayılan olarak bu dizin mevcut olduğunda çıkış dizinine veya aksi halde proje dizinine olur.
Göreli executablePath Değeri yeniden bağlamadan işletim sistemine geçirir. Profilin çalışma dizininden yol bileşenleriyle bir değeri çözümler. Çıplak yürütülebilir ad için, Visual Studio kendi geçerli dizinini ve ardından PATHöğesini denetler.
launchBrowser ve launchUrl Ayrıştırılan profildeki değerleri korur ancak tarayıcı açmaz. Değerleri başlatma sağlayıcısı için kullanılabilir hale getirir. Örneğin, ASP.NET Core araçları bir tarayıcı açabilir.
applicationUrl Ayarlar ASPNETCORE_URLS. Değeri ASP.NET Core araçları gibi yüklü başlatma sağlayıcıları için kullanılabilir hale getirir.
dotnetRunMessages İletiyi Building... denetler. Visual Studio çıkışını denetlemek için özelliğini kullanmaz.
Hata ayıklayıcısı özellikleri Hata ayıklayıcıya özgü özellikleri yoksayar. Proje ve hata ayıklayıcı özelliği desteklediğinde , , , remoteDebugEnabled, hotReloadEnabled ve gibi jsWebView2DebuggingnativeDebuggingsqlDebuggingözellikleri kullanır.

.NET 11 ve sonraki sürümlerde her iki tüketici de öğesini genişletir"$(ProjectDir)". Önceki sürümlerde, her iki tüketici için de proje dizinini tek bir workingDirectory değer tanımlamaz. Visual Studio genişletir"$(ProjectDir)", ancak dotnet run bunu değişmez metin olarak ele alır ve başlatma ayarları dosyasını içeren dizinden göreli yolları çözümler. Bu nedenle, için dotnet run geleneksel Properties/launchSettings.json veya My Project/launchSettings.json dosya ile kullanın"..". Visual Studio aynı değeri proje dizininin üst öğesiyle çözer.

Windows Forms ve WPF uygulamaları başka bir dotnet run profil türü eklemez. ve environmentVariablesgibi commandLineArgs yaygın ayarlarla bir Project profil kullanın. Visual Studio bu masaüstü proje türleri, karma yönetilen ve yerel hata ayıklama veya jsWebView2Debugging WebView2 gibi nativeDebugging geçerli hata ayıklayıcı özelliklerini de kullanabilir. Tarayıcı ve URL özellikleri yalnızca başlatma sağlayıcısı veya uygulama bunları tükettiğinde etkili olur.

Diğer proje türleri ve Visual Studio iş yükleri, profil türleri ekleyen veya ek özellikleri yorumlayan başlatma sağlayıcıları yükleyebilir. Bu uzantılar için dotnet rundestek eklemez: CLI, varsayılan seçim sırasında desteklenmeyen profil türlerini atlar ve açıkça seçtiğinizde bir hata bildirir.

Visual Studio desteklenen hata ayıklayıcısı ayarları ve project kullanıcı arabirimi için bkz. .NET C# hata ayıklama yapılandırması için Project ayarları.

Arguments

<applicationArguments>

Çalıştırılmakta olan uygulamaya geçirilen bağımsız değişkenler.

tarafından dotnet run tanınmayan tüm bağımsız değişkenler uygulamaya geçirilir. bağımsız değişkenlerini dotnet run uygulamanın bağımsız değişkenlerinden ayırmak için seçeneğini kullanın -- .

Bağımsız değişkenleri uygulamaya iletme

dotnet run tanımadığı tüm belirteçleri uygulamaya iletir. İletilen belirteçler özgün sırasını tutar, ancak dotnet run önce anladığı seçenekleri kaldırır. Tanınmayan bir seçenek adı ile değeri arasında tanınan bir seçenek göründüğünde, tanınan seçeneğin kaldırılması artık belirteçlerin anlamını değiştirebilir.

Örneğin, aşağıdaki komut tanınan seçeneği --project uygulamanın alması amaçlanan belirteçler arasında bir araya gelir:

dotnet run --app-flag --app-name --project ConsoleApp.csproj A.txt

tüketildikten dotnet runsonra --project ConsoleApp.csproj uygulama alır--app-flag --app-name A.txt. Daha sonra uygulama, özgün komut satırıyla eşleşmeyen değeri A.txtolarak davranır--app-name.

Bu belirsizliği önlemek için, uygulama bağımsız değişkenlerini sabit --değerden sonra yerleştirin:

dotnet run --project ConsoleApp.csproj -- --app-flag --app-name A.txt

Ayırıcı, -- aşağıdaki her belirteci bir uygulama bağımsız değişkeni olarak işaretler, bu nedenle dotnet run bunları yeniden sıralamaz veya yeniden yorumlamaz. Ayırıcı ayrıca daha sonra uygulamaya iletilen bir belirteçle eşleşebilecek yeni dotnet run seçeneklere karşı betikleri de hazırlar.

Uyarı

Aynı davranış dotnet build ve Microsoft dotnet test için de geçerlidir. Test.Platform (MTP) modu, tanınmayan belirteçleri sırasıyla MSBuild'e veya test uygulamasına iletir. hakkında dotnet testdaha fazla bilgi için bkz . Bağımsız değişkenleri test uygulamasına iletme.

Seçenekler

  • --

    Çalıştırılmakta olan uygulamanın bağımsız değişkenlerinden dotnet run bağımsız değişkenleri ile sınırlandırıyor. Bu sınırlayıcıdan sonraki tüm bağımsız değişkenler uygulama çalıştırmasına geçirilir.

  • -a|--arch <ARCHITECTURE>

    Hedef mimariyi belirtir. Bu, sağlanan değerin varsayılan RID ile birleştirildiği Çalışma Zamanı Tanımlayıcısı'nı (RID) ayarlamak için bir kısaltma söz dizimidir. Örneğin, bir win-x64 makinede, belirterek --arch x86 RID değerini olarak win-x86ayarlar. Bu seçeneği kullanırsanız, seçeneğini kullanmayın -r|--runtime . .NET 6 Önizleme 7 sürümünden itibaren kullanılabilir.

  • --artifacts-path <ARTIFACTS_DIR>

    Yürütülen komuttaki tüm derleme çıktı dosyaları, projeyle ayrılmış olarak belirtilen yolun altındaki alt klasörlere gider. Daha fazla bilgi için bkz . Yapıt Çıktı Düzeni. Bu seçenek ve sağlanan değer, ve kullanırken dotnetdotnetbaşka bir komutun çıkışına bağlı olan herhangi bir dotnet build --no-restoredotnet publish --no-build komutta açıkça basamaklandırılmalıdır. .NET 8 SDK'dan itibaren kullanılabilir.

  • -c|--configuration <CONFIGURATION>

    Derleme yapılandırmasını tanımlar. Çoğu proje için varsayılan değer şeklindedir Debug, ancak projenizdeki derleme yapılandırma ayarlarını geçersiz kılabilirsiniz.

  • --disable-build-servers

    Komutu kalıcı derleme sunucularını yoksaymaya zorlar. Bu seçenek, derleme önbelleğinin tüm kullanımını devre dışı bırakmak için tutarlı bir yol sağlar ve bu da bir derlemeyi sıfırdan zorlar. Önbelleklere güvenmeyen bir derleme, önbellekler herhangi bir nedenle bozulduğunda veya yanlış olduğunda kullanışlıdır. .NET 7 SDK'dan itibaren kullanılabilir.

  • -e|--environment <KEY=VALUE>

    komutu tarafından çalıştırılacak işlemde belirtilen ortam değişkenini ayarlar. Belirtilen ortam değişkeni işleme uygulanmadıdotnet run.

    Bu seçenekten geçirilen ortam değişkenleri ortam ortam değişkenlerine, System.CommandLine env yönergelerine ve environmentVariables seçilen başlatma profilinden önceliklidir. Daha fazla bilgi için bkz . Ortam değişkenleri.

    (Bu seçenek .NET SDK 9.0.200'e eklendi.)

  • -f|--framework <FRAMEWORK>

    Belirtilen çerçeveyi kullanarak uygulamayı derler ve çalıştırır. Çerçeve proje dosyasında belirtilmelidir.

  • --file <FILE_PATH>

    Çalıştırılacak dosya tabanlı uygulamanın yolu. Yol belirtilmezse, dosyayı bulmak ve çalıştırmak için geçerli dizin kullanılır. Dosya tabanlı uygulamalar hakkında daha fazla bilgi için bkz. Dosya tabanlı C# uygulamaları oluşturma.

    Unix'te, shebang (#!) yönergesi ekleyerek ve yürütme iznini ayarlayarak dosya adını kullanarak dosya tabanlı uygulamaları doğrudan yürütür. Daha fazla bilgi için bkz . Unix shebang (#!) desteği.

    .NET SDK 10.0.100'de kullanıma sunulmuştur.

  • --force

    Son geri yükleme başarılı olsa bile tüm bağımlılıkların çözümlenmesine zorlar. Bu bayrağın belirtilmesi, project.assets.json dosyasını silmekle aynıdır.

  • --interactive

    Komutun durmasına ve kullanıcı girişini veya eylemini beklemesine izin verir. Örneğin, kimlik doğrulamasını tamamlamak için.

  • -lp|--launch-profile <NAME>

    Uygulamayı başlatırken kullanılacak başlatma profilinin adı. Daha fazla bilgi için bkz . Profilleri başlatma.

  • --no-build

    Çalıştırmadan önce projeyi derlemez. Ayrıca bayrağı örtük olarak ayarlar --no-restore .

  • --no-cache

    Güncel denetimleri atlayın ve çalıştırmadan önce programı her zaman derleyin.

  • --no-dependencies

    Projeden projeye (P2P) başvurularla bir projeyi geri yüklerken, başvuruları değil kök projeyi geri yükler.

  • --no-launch-profile

    Uygulamayı yapılandırmak için launchSettings.json kullanmayı denemez.

  • --no-restore

    Komutu çalıştırırken örtük geri yükleme yürütmez.

  • --no-self-contained

    Uygulamanızı çerçeveye bağımlı bir uygulama olarak yayımlayın. Uygulamanızı çalıştırmak için hedef makineye uyumlu bir .NET çalışma zamanı yüklenmelidir.

  • --os <OS>

    Hedef işletim sistemini (OS) belirtir. Bu, sağlanan değerin varsayılan RID ile birleştirildiği Çalışma Zamanı Tanımlayıcısı'nı (RID) ayarlamak için bir kısaltma söz dizimidir. Örneğin, bir win-x64 makinede, belirterek --os linux RID değerini olarak linux-x64ayarlar. Bu seçeneği kullanırsanız, seçeneğini kullanmayın -r|--runtime . .NET 6'dan beri kullanılabilir.

  • --project <PATH>

    Çalıştırılacak proje dosyasının yolunu belirtir (klasör adı veya tam yol). Belirtilmezse, varsayılan olarak geçerli dizine geçer.

    -p için --project kısaltması, .NET 6 SDK'dan itibaren kullanım dışıdır. Sınırlı bir süre için, -p kullanımdan kaldırma uyarısına rağmen için --project kullanılabilir. seçeneği için sağlanan bağımsız değişken içermiyorsa=, komutu için -pkısa olarak kabul eder--project. Aksi takdirde, komutu bunun için -pkısa olduğunu --property varsayar. -p için bu esnek --project kullanımı .NET 7'de devre dışı kalacaktır.

  • --property:<NAME>=<VALUE>

    Bir veya daha fazla MSBuild özelliği ayarlar. Noktalı virgülle sınırlandırılmış birden çok özellik belirtin veya şu seçeneği yineleyerek:

    --property:<NAME1>=<VALUE1>;<NAME2>=<VALUE2>
    --property:<NAME1>=<VALUE1> --property:<NAME2>=<VALUE2>
    

    Kısa form -p için --propertykullanılabilir. seçeneği için sağlanan bağımsız değişken öğesini içeriyorsa =, -p için --propertykısa kabul edilir. Aksi takdirde, komutu bunun için -pkısa olduğunu --project varsayar.

    BIR MSBuild özelliği ayarlamak yerine uygulamaya geçirmek --property için söz dizimi ayırıcısından -- sonra seçeneğini belirtin, örneğin:

    dotnet run -- --property name=value
    
  • -r|--runtime <RUNTIME_IDENTIFIER>

    Paketlerinin geri yükleneceği hedef çalışma zamanını belirtir. Çalışma Zamanı Tanımlayıcılarının (RID) listesi için RID kataloğuna bakın.

  • --sc|--self-contained

    Çalışma zamanının hedef makineye yüklenmesi gerekmemesi için .NET çalışma zamanını uygulamanızla yayımlayın.

  • --tl:[auto|on|off]

    Derleme çıkışı için Terminal Günlükçü'lerinin kullanılıp kullanılmayacağını belirtir. Varsayılan değer, terminal günlüğünü etkinleştirmeden önce ortamı doğrulayan değeridir auto. Ortam denetimi, terminalin modern çıkış özelliklerini kullanabileceğini ve yeni günlükçü'leri etkinleştirmeden önce yeniden yönlendirilmiş standart çıkış kullanmadığını doğrular. on ortam denetimini atlar ve terminal günlüğünü etkinleştirir. off ortam denetimini atlar ve varsayılan konsol günlükçüsüsü kullanır.

    Terminal Günlükçü, geri yükleme aşamasını ve ardından derleme aşamasını gösterir. Her aşamada, şu anda oluşturulan projeler terminalin en altında görünür. Derlemeye alınan her proje, hem şu anda derlenen MSBuild hedefini hem de bu hedefe harcanan süreyi oluşturur. Derleme hakkında daha fazla bilgi edinmek için bu bilgileri arayabilirsiniz. Bir projenin oluşturulması tamamlandığında, şunları yakalayan tek bir "derleme tamamlandı" bölümü yazılır:

    • Oluşturulan projenin adı.
    • Hedef çerçeve (çok hedefliyse).
    • Bu derlemenin durumu.
    • Bu derlemenin birincil çıkışı (köprüdür).
    • Bu proje için oluşturulan tüm tanılamalar.

    Bu seçenek .NET 8'den itibaren kullanılabilir.

  • -v|--verbosity <LEVEL>

    Komutun ayrıntı düzeyini ayarlar. İzin verilen değerler , q[uiet], m[inimal], n[ormal]ve d[etailed]değerleridirdiag[nostic]. Varsayılan değer: minimal. Daha fazla bilgi için bkz. LoggerVerbosity.

  • -?|-h|--help

    komutunun nasıl kullanılacağına ilişkin bir açıklama yazdırır.

Ortam değişkenleri

Aşağıdaki kaynaklar başlatılan uygulamaya ortam değişkenleri uygular:

  1. Komut çalıştırıldığında işletim sisteminden ortam ortam değişkenleri.
  2. Gibi envSystem.CommandLine [env:key=value] yönergeleri. Bunlar yalnızca tarafından dotnet runçalıştırılan proje için değil tüm işlem için dotnet run geçerlidir.
  3. Seçilen başlatma profilinden oluşturulan değerler. dotnet runbir profil kümesinde DOTNET_LAUNCH_PROFILEProject ve applicationUrl kümelerini ayarlarASPNETCORE_URLS.
  4. environmentVariables varsa , seçilen başlatma profilinden. Bunlar tarafından dotnet runçalıştırılan projeye uygulanır.
  5. -e|--environment CLI seçenek değerleri (.NET SDK sürüm 9.0.200'de eklendi). Bunlar tarafından dotnet runçalıştırılan projeye uygulanır.

Ortam bu listeyle aynı sırada oluşturulur, bu nedenle -e|--environment seçenek en yüksek önceliğe sahiptir.

Örnekler

  • Projeyi geçerli dizinde çalıştırın:

    dotnet run
    
  • Belirtilen dosya tabanlı uygulamayı geçerli dizinde çalıştırın:

    dotnet run --file ConsoleApp.cs
    

    .NET SDK 10.0.100'e dosya tabanlı uygulama desteği eklendi.

  • Belirtilen projeyi çalıştırın:

    dotnet run --project ./projects/proj1/proj1.csproj
    
  • Projeyi geçerli dizinde çalıştırın ve Yayın yapılandırması'nı belirtin:

    dotnet run --property:Configuration=Release
    
  • Projeyi geçerli dizinde çalıştırın ( --help boş -- seçenek kullanıldığından bu örnekteki bağımsız değişken uygulamaya geçirilir):

    dotnet run --configuration Release -- --help
    
  • Geçerli dizinde proje için bağımlılıkları ve araçları geri yükleyip yalnızca en düşük çıkışı görüntüleyin ve sonra projeyi çalıştırın:

    dotnet run --verbosity m
    
  • Belirtilen çerçeveyi kullanarak projeyi geçerli dizinde çalıştırın ve bağımsız değişkenleri uygulamaya geçirin:

    dotnet run -f net6.0 -- arg1 arg2
    

    Aşağıdaki örnekte, uygulamaya üç bağımsız değişken geçirilir. bir bağımsız değişken kullanılarak -geçirilir ve sonra iki bağımsız değişken geçirilir --:

    dotnet run -f net6.0 -arg1 -- arg2 arg3