gpt4 book ai didi

c# - 重新保存Blazor WASM的.razor文件

转载 作者:行者123 更新时间:2023-12-03 16:21:14 24 4
gpt4 key购买 nike

有没有一种方法可以使Blazor Webassembly在更改/更新然后保存后重新编译.razor文件?我已经习惯了在传统的ASP.NET Core MVC Razor View 以及客户端框架(例如Angular)中发生这种情况。
在ASP.NET Core MVC> 3.0中,类似services.AddRazorPages().AddRazorRuntimeCompilation();可以解决问题,但是Blazor没有任何我可以找到的东西。

当我需要停止整个应用程序并重新启动以查看最新更改时,这很烦人。默认情况下,新Blazor应用程序的Main方法看起来像

        public static async Task Main(string[] args)
{
var builder = WebAssemblyHostBuilder.CreateDefault(args);
builder.RootComponents.Add<App>("app");

builder.Services.AddTransient(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) });

await builder.Build().RunAsync();
}

我在这里想念什么? Blazor WASM还在吗?如果可以的话,我愿意接受像 dotnet watch dotnet build这样的小技巧。

最佳答案

从.NET 5.0和VS 16.8.1开始,它似乎没有内置的HMR,就像您在Angular或React项目中可以找到的那样,您可以在其中更改代码并刷新浏览器。
根据我发现的信息,此功能预定用于.NET 6,但是有解决方法可以使此功能正常工作,虽然有点麻烦,但确实可以工作。
如果您使用dotnet watch --project "{PathToServer}/{YourServerProject}.csproj" run运行.NET项目,而不是启动调试或按F5键,它将监视项目文件(包括.razor文件)中的所有更改,然后重新编译它们。
截至目前,浏览器将显示一条消息,表明它已断开与服务器的连接,并且似乎未重新建立连接。您需要手动刷新浏览器,并且将显示所有更改,但您将丢失任何应用程序状态。
他们现在拥有的最好的,see this thread for more info

关于c# - 重新保存Blazor WASM的.razor文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62119532/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com