[英]Hot reload in Visual Sstudio 2022 Current not working for existing Blazor application
在使用 VS 2022 預覽版進行多次迭代后,我將其刪除並在可用時安裝了 VS 2022 Current。
現有的 Blazor 托管應用程序不會在文件保存或按下熱重載按鈕時熱重載。 它在預覽版本中重新加載“很好”。 不管我是在調試還是不調試的情況下運行它都沒有關系。
使用新安裝的版本創建的新應用程序會熱重載。
我在 *.csproj 或 launchSettings.json 文件中沒有看到任何重要的區別。 他們都針對 net6.0。 我還刪除了 .vs 目錄並清理了解決方案。
唯一的區別是我的項目在新應用程序模板中使用 Program.cs 和 Startup.cs 與僅使用 Program.cs,但這並不重要。 或者,是嗎?
是什么阻止 Visual Studio 熱重載現有應用程序?
更新
切換到單個 Program.cs 和 WebApplication builder 確實有所幫助。 現在熱重載無需調試即可工作。 調試 VS 說它應用了更改,但它們沒有應用到屏幕上。
我仍然想知道為什么需要進行此更改以及如何在調試時啟用熱重載?
對於您的問題,目前 Blazor WebAssembly 僅在不調試時支持熱重載。 這是一種記錄在這里: https : //docs.microsoft.com/en-us/aspnet/core/test/hot-reload?view=aspnetcore-6.0
在 Visual Studio 2022 GA (17.0) 中,僅在沒有調試器的情況下運行時才支持熱重載。
我在嘗試診斷為什么我自己現有的 Blazor WebAssembly ASP.Net Core 托管應用程序不會熱重載時發現了您的 Q,在嘗試了各種事情 4-5 小時后,我終於發現有一個對類庫的項目引用仍然針對 .NET 5。在我的情況下,不再需要此參考,刪除它可以解決我的問題,並且我的 Hot Reload 輸出再次顯示。
(Web assembly): Hot reload session started
根據我的測試,如果一個 .NET 6 引用的項目又引用了一個 .NET 5 項目,這也會將該依賴項引入混合中,需要刪除或升級。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.