XAML Çalışırken Yeniden Yükleme sorunlarını giderme
Şunlar için geçerlidir: Visual Studio 2019 ve sonraki sürümleri
Bu sorun giderme kılavuzu, XAML Çalışırken Yeniden Yükleme düzgün çalışmasını engelleyen sorunların çoğunu çözmeniz gereken ayrıntılı yönergeler içerir.
XAML Çalışırken Yeniden Yükleme WPF ve UWP uygulamaları için desteklenir. İşletim sistemi ve araç gereksinimleri hakkında ayrıntılı bilgi için bkz. XAML Çalışırken Yeniden Yükleme ile çalışan XAML kodunu yazma ve hata ayıklama.
Çalışırken Yeniden Yükleme kullanılamıyorsa
Uygulamanızda hata ayıklarken uygulama içi araç çubuğunda iletiyi Hot Reload is not available
görürseniz, sorunu çözmek için bu makalede açıklanan yönergeleri izleyin.
XAML Çalışırken Yeniden Yükleme etkinleştirildiğini doğrulama
Özellik, Visual Studio 2019 ve sonraki sürümlerde varsayılan olarak etkindir. Uygulamanızda hata ayıklamaya başladığınızda, XAML Çalışırken Yeniden Yükleme kullanılabilir olduğunu onaylayan uygulama içi araç çubuğunu gördüğünüzden emin olun.
Visual Studio 2019:
Visual Studio 2022:
Uygulama içi araç çubuğunu görmüyorsanız Visual Studio menü çubuğundan Hata Ayıklama>Seçenekleri>XAML Çalışırken Yeniden Yükleme'ni seçin. Ardından, Seçenekler iletişim kutusunda XAML Çalışırken Yeniden Yükleme etkinleştir seçeneğinin belirlendiğinden emin olun.
İşleme Ekle yerine Hata Ayıklamayı Başlat'ı kullandığınızı doğrulayın
XAML Çalışırken Yeniden Yükleme, ortam değişkeninin ENABLE_XAML_DIAGNOSTICS_SOURCE_INFO
uygulama başlatıldığında olarak ayarlanmasını 1
gerektirir. Visual Studio, Hata AyıklamaYı>Başlat Hata Ayıklama (veya F5) komutunun bir parçası olarak değeri otomatik olarak ayarlar. Bunun yerine XAML Çalışırken Yeniden Yükleme İşleme>Ekle komutuyla kullanmak istiyorsanız ortam değişkenini kendiniz ayarlayın.
Not
Ortam değişkeni ayarlamak için Başlat düğmesini kullanarak ortam değişkenini arayın ve Sistem ortam değişkenlerini düzenle'yi seçin. Açılan iletişim kutusunda Ortam Değişkenleri'ni seçin, ardından bunu bir kullanıcı değişkeni olarak ekleyin ve değerini olarak 1
ayarlayın. Temizlemek için hata ayıklamayı bitirdiğinizde değişkeni kaldırın.
MSBuild özelliklerinizin doğru olduğunu doğrulayın
Varsayılan olarak, kaynak bilgileri hata ayıklama yapılandırmasına dahil edilir. Proje dosyalarınızdaki ( *.csproj gibi) MSBuild özellikleri tarafından denetlenir. WPF için özelliği, olarak ayarlanması True
gereken şeklindedirXamlDebuggingInformation
. UWP için özelliği, olarak ayarlanması False
gereken şeklindedirDisableXbfLineInfo
. Örneğin:
WPF:
<XamlDebuggingInformation>True</XamlDebuggingInformation>
UWP:
<DisableXbfLineInfo>False</DisableXbfLineInfo>
Doğru derleme yapılandırma adını kullandığınızı doğrulayın
XAML Çalışırken Yeniden Yükleme desteklemek için doğru MSBuild özelliğini el ile ayarlamanız (önceki bölüme bakın) veya varsayılan derleme yapılandırma adını (Hata Ayıklama) kullanmanız gerekir. MSBuild özelliğini doğru ayarlamazsanız, özel derleme yapılandırma adı çalışmaz ve Yayın derlemesi çalışmaz.
Programınızın yükseltilmiş çalışmadığından emin olun
XAML Çalışırken Yeniden Yükleme, yükseltilmiş/yönetici olarak çalıştırılan uygulamalarda desteklenmez.
XAML dosyanızda hata olmadığını doğrulayın
XAML dosyanız Hata Listesi'nde hatalar gösteriyorsa, XAML Çalışırken Yeniden Yükleme çalışmayabilir.
Visual Studio 2022'de kaynak başvurularını ve stillerini güncelleştirmek için daha kapsamlı aramayı etkinleştirme
ortam değişkenini XAML_HOT_RELOAD_ACCURACY_OVER_PERF
olarak ayarlamak 1
, WPF uygulamalarında kaynak başvurularını ve stillerini güncelleştirmek için daha kapsamlı bir arama sağlar. Üçüncü taraf araç setleri kullanan uygulamalar gibi bazı uygulamaların XAML Çalışırken Yeniden Yükleme önemli gecikmelerle karşılaşabileceğini unutmayın. Gecikme oluştuğunda, Düzenleyici durum çubuğunda bir Çalışırken Yeniden Yükleme ilerleme zamanlayıcısı görüntülenir.
Bilinen sınırlamalar
XAML Çalışırken Yeniden Yükleme bilinen sınırlamaları aşağıdadır. Karşılaşacağınız sınırlamaları geçici olarak çözmek için hata ayıklayıcıyı durdurmanız ve ardından işlemi tamamlamanız gerekir.
Sınırlama | WPF | UWP | Notlar |
---|---|---|---|
Uygulama çalışırken olayları denetimlere bağlama | Desteklenmiyor | Desteklenmiyor | Bkz. hata: Olayın Başarısız Olduğundan Emin Olun. WPF'de var olan bir olay işleyiciye başvurabilirsiniz. UWP uygulamalarında mevcut bir olay işleyiciye başvurmak desteklenmez. |
Uygulamanızın Page/Window veya App.xaml gibi bir kaynak sözlüğünde kaynak nesneleri oluşturma | Visual Studio 2019 sürüm 16.2 ve sonrasından itibaren desteklenir | Destekleniyor | Örnekler: - SolidColorBrush Olarak kullanmak üzere kaynak sözlüğüne eklemeStaticResource .Not: Statik kaynaklar, stil dönüştürücüleri ve kaynak sözlüğüne yazılan diğer öğeler XAML Çalışırken Yeniden Yükleme kullanılırken uygulanabilir/kullanılabilir. Yalnızca kaynağın oluşturulması desteklenmez. - Kaynak sözlüğü Source özelliğini değiştirme. |
Uygulama çalışırken projenize yeni denetimler, sınıflar, pencereler veya başka dosyalar ekleme | Desteklenmiyor | Desteklenmiyor | Yok |
NuGet paketlerini yönetme (paketleri ekleme/kaldırma/güncelleştirme) | Desteklenmiyor | Desteklenmiyor | Yok |
{x:Bind} işaretleme uzantısını kullanan veri bağlaması değiştiriliyor | Yok | Visual Studio 2019'dan itibaren desteklenir | Bunun için Windows 10 sürüm 1809 (derleme 10.0.17763) ve üzeri gerekir. Visual Studio 2017 veya önceki sürümlerde desteklenmez. |
x:Uid yönergelerini değiştirme | Yok | Desteklenmiyor | Yok |
Birden çok işlem kullanma | Destekleniyor | Destekleniyor | Visual Studio 2019 sürüm 16.6 ve sonraki sürümlerde desteklenir. |
Temalardaki Stilleri Düzenleme\generic.xaml | Desteklenmiyor | Desteklenmiyor | XAML Çalışırken Yeniden Yükleme yeni stiller oluşturur; özgün stiller korumalıdır. Platformlar, denetimlere uygulandıktan sonra generic.xaml'deki stilleri önbelleğe alır ve bu da bunların değiştirilmesi için erişilemez olmasını sağlar. |
Yaygın hata iletileri
XAML Çalışırken Yeniden Yükleme kullanırken aşağıdaki hatalara karşılaşabilirsiniz.
Hata iletisi | Açıklama |
---|---|
Olayın Başarısız Olduğundan Emin Olun | Hata, uygulamanız çalışırken desteklenmeyen bir olayı denetimlerinizden birine bağlamaya çalıştığınızı gösterir. |
Bu değişiklik XAML Çalışırken Yeniden Yükleme tarafından desteklenmez ve hata ayıklama oturumu sırasında uygulanmaz. | Hata, denediğiniz değişikliğin XAML Çalışırken Yeniden Yükleme tarafından desteklenmediğini gösterir. Hata ayıklama oturumunu durdurun, değişikliği yapın ve hata ayıklama oturumunu yeniden başlatın. |
Desteklendiğini görmek istediğiniz desteklenmeyen bir senaryo bulursanız Özellik önerin seçeneğimizi kullanarak bize bildirin.