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.
.NET Çalışırken Yeniden Yükleme, stil sayfalarında yapılan değişiklikler de dahil olmak üzere kod değişikliklerini, uygulamayı yeniden başlatmadan ve uygulama durumunu kaybetmeden çalışan bir uygulamaya uygular. Çalışırken Yeniden Yükleme, .NET 6 veya sonraki sürümlerdeki tüm ASP.NET Core projelerinde desteklenir.
Genellikle, güncelleştirilmiş kod aşağıdaki koşullarla geçerli olacak şekilde yeniden çalıştırılır:
- Bazı başlangıç mantığı yalnızca bir kez çalıştırılır:
- Kod güncelleştirmesi bir satır içi ara yazılım temsilcisine yapılmadığı sürece ara yazılım.
- Yapılandırılmış hizmetler.
- Kod güncelleştirmesi bir yol işleyici temsilcisine (örneğin,
OnInitialized) yönelik olmadığı sürece yol oluşturma ve yapılandırma.
- UygulamalardaBlazor, çerçeve bir Razor bileşenin otomatik olarak işlenmesini tetikler.
- MVC ve Razor Sayfalar uygulamalarında, Anında Yeniden Yükleme otomatik olarak tarayıcının yenilenmesini tetikler.
- Bir Razorbileşen parametresi özniteliğinin kaldırılması, bileşenin yeniden yenilenmesine neden olmaz. Uygulamanın yeniden başlatılması gerekir.
Desteklenen senaryolar hakkında daha fazla bilgi için bkz . Desteklenen kod değişiklikleri (C# ve Visual Basic).
Blazor WebAssembly
Blazor WebAssembly Anında Yeniden Yükleme aşağıdaki kod değişikliklerini destekler:
- Yeni türler.
- İç içe sınıflar.
- Değişkenleri, ifadeleri ve deyimleri ekleme, kaldırma ve düzenleme gibi yöntem gövdelerinde yapılan çoğu değişiklik.
- Lambda ifadelerinin ve yerel işlevlerin gövdelerinde yapılan değişiklikler.
- Mevcut türlere statik ve örnek yöntemleri ekleme.
- Var olan türlere statik ve örnek alanları, olaylar ve özellikler ekleme.
- Mevcut yöntemlere statik lambda ekleme.
- Mevcut yöntemlere, önceden
this'i yakalayanthis'ı yakalayan lambdalar ekleme.
Daha önce bir bileşen parametresinin değerini ayarlayan bir öznitelik kaldırıldığında, kaldırılan parametreyi varsayılan değerine geri ayarlamak için bileşenin atıldığını ve yeniden başlatıldığını unutmayın.
Aşağıdaki kod değişiklikleri uygulamalar için Blazor WebAssembly desteklenmez:
- Yeni
awaitbir işleç veyayieldanahtar sözcük ifadesi ekleme. - Yöntem parametrelerinin adlarını değiştirme.
Blazor WebAssembly Anında Yeniden Yükleme aşağıdaki kod değişikliklerini destekler:
- Yeni türler.
- İç içe sınıflar.
- Değişkenleri, ifadeleri ve deyimleri ekleme, kaldırma ve düzenleme gibi yöntem gövdelerinde yapılan çoğu değişiklik.
- Lambda ifadelerinin ve yerel işlevlerin gövdelerinde yapılan değişiklikler.
- Mevcut türlere statik ve örnek yöntemleri ekleme.
- Var olan türlere statik alanlar ekleme.
- Mevcut yöntemlere statik lambda ekleme.
- Mevcut yöntemlere, önceden
this'i yakalayanthis'ı yakalayan lambdalar ekleme.
Daha önce bir bileşen parametresinin değerini ayarlayan bir öznitelik kaldırıldığında, kaldırılan parametreyi varsayılan değerine geri ayarlamak için bileşenin atıldığını ve yeniden başlatıldığını unutmayın.
Aşağıdaki kod değişiklikleri uygulamalar için Blazor WebAssembly desteklenmez:
- Yeni
awaitbir işleç veyayieldanahtar sözcük ifadesi ekleme. - Yöntem parametrelerinin adlarını değiştirme.
- Örnek (
staticolmayan) alanlar, olaylar veya özellikler ekleme.
Blazor WebAssembly Anında Yeniden Yükleme aşağıdaki kod değişikliklerini destekler:
- Değişkenleri, ifadeleri ve deyimleri ekleme, kaldırma ve düzenleme gibi yöntem gövdelerinde yapılan çoğu değişiklik.
- Lambda ifadelerinin ve yerel işlevlerin gövdelerinde yapılan değişiklikler.
Aşağıdaki kod değişiklikleri uygulamalar için Blazor WebAssembly desteklenmez:
- Yeni lambdalar veya yerel işlevler ekleme.
- Yeni
awaitbir işleç veyayieldanahtar sözcük ifadesi ekleme. - Yöntem parametrelerinin adlarını değiştirme.
- Yöntem gövdelerinin dışındaki değişiklikler.
- Örnek (
staticolmayan) alanlar, olaylar veya özellikler ekleme.
.NET CLI
Anında Yeniden Yükleme dotnet watch komutuyla etkinleştirilir.
dotnet watch
Uygulamayı yeniden derlemeye ve yeniden başlatmaya zorlamak için komut kabuğundaki Ctrl+R klavye bileşimini kullanın.
Kaba düzenleme olarak adlandırılan, desteklenmeyen bir kod düzenlemesi yapıldığında, dotnet watch uygulamayı yeniden başlatmak isteyip istemediğinizi sorar:
- Evet: Uygulamayı yeniden başlatır.
- Hayır: Uygulamayı yeniden başlatmaz ve değişiklikler uygulanmadan uygulamayı çalışır durumda bırakır.
- Her zaman: Kaba düzenlemeler gerçekleştiğinde uygulamayı gerektiği gibi yeniden başlatır.
- Hiçbir zaman: Uygulamayı yeniden başlatmaz ve gelecekteki istemleri önler.
"Çalışırken Yeniden Yükleme" desteğini devre dışı bırakmak için --no-hot-reload seçeneğini dotnet watch komutuna ekleyin.
dotnet watch --no-hot-reload
Çalışırken Yeniden Yükleme'u Devre Dışı Bırak
Aşağıdaki Properties/launchSettings.json ayarı Sık Erişimli Yeniden Yüklemeyi devre dışı bırakır:
"hotReloadEnabled" : false
WebAssembly Anında Yeniden Yükleme (WasmEnableHotReload)
.NET 10 ve sonraki sürümlerde, WasmEnableHotReload MSBuild özelliği, Blazor WebAssembly uygulamaları ve Blazor WebAssembly olmayan Tarayıcı Uygulaması (wasmbrowser şablonu) projeleri dahil olmak üzere .NET WebAssembly uygulamalarında Çalışırken Yeniden Yükleme altyapısının derleme çıktısına eklenip eklenmeyeceğini denetler.
true yapılandırması için özellik varsayılan olarak Debug şeklinde ayarlanır.
Özelliğin false olarak ayarlanması, dotnet build çıktısından Çalışırken Yeniden Yükleme bağımlılıklarını kaldırır; bu, örneğin webpack veya Vite ile kullanılacak paketleyicilerle uyumlu çıktılar üretirken yararlıdır.
WebAssembly uygulamaları için Çalışırken Yeniden Yükleme'u devre dışı bırakmak üzere, özelliği uygulamanın proje dosyasında (.csproj) false olarak ayarlayın:
<PropertyGroup>
<WasmEnableHotReload>false</WasmEnableHotReload>
</PropertyGroup>
Çalışırken Yeniden Yükleme’ı özel (Debug olmayan) bir yapılandırma için etkinleştirmek amacıyla özelliği true olarak ayarlayın:
<PropertyGroup>
<WasmEnableHotReload>true</WasmEnableHotReload>
</PropertyGroup>
Uygulamalarda Çalışırken Yeniden Yükleme Blazor WebAssembly denetleme hakkında daha fazla bilgi için bkz. ASP.NET Core Blazor uygulamalarında hata ayıklama.
Ek kaynaklar
Daha fazla bilgi için Visual Studio belgelerinde aşağıdaki kaynaklara bakın:
- YouTube videosu: Visual Studio 2022, VS Code ve NOTEPAD'de .NET 6 Sıcak Yeniden Yükleme?!?
- Çalışma zamanında kod düzenlemeye yönelik .NET Sıcak Yeniden Yükleme deneyiminin tanıtımı
- Visual Studio'da Anında Yeniden Yükleme ile çalışan kod yazma ve hata ayıklama
Düzenleyicileri için & güncelleştirmeler + ASP.NET için Hızlı Yeniden Yükleme - Canlı Yeniden Yükleme ile Test Yürütme
ASP.NET Core