是否可以在调试期间编辑 Razor 类库中的 Razor 页面 (.cshtml) 而无需重新启动?

我有一个ASP.Net MVC Core application引用了Razor class librarySomePage.cshtml

调试应用程序时,我可以在应用程序中编辑页面ASP.Net MVC Core,并且更改会反映在浏览器中(刷新后)。

但是当我在 中编辑页面时Razor Class Library,更改在浏览器中不可见(刷新后)。我需要停止应用程序并重新启动 - 然后更改将在浏览器中可见。

有没有办法在不重新启动的情况下刷新 Razor 类库中编辑的页面?


POPMUISE
浏览 137回答 3
3回答

元芳怎么了

那是不可能的。在.NET中,所有类库都必须在执行代码之前进行编译,并且编译后的引用包含在原始项目中。因此对类库的任何更改都必须重新编译。因此我们需要停止项目来编译代码并更新引用。

慕姐8265434

Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation安装包后就可以了。然后配置:public void ConfigureServices(IServiceCollection services){    services.AddRazorPages();    services.Configure<MvcRazorRuntimeCompilationOptions>(options =>    {        var libraryPath = Path.GetFullPath(            Path.Combine(HostEnvironment.ContentRootPath, "..", "MyClassLib"));        options.FileProviders.Add(new PhysicalFileProvider(libraryPath));    });}

人到中年有点甜

您可以在不停止解决方案的情况下编辑 .chtml 文件。只需在我们更正后刷新页面即可。如果您使用 Visual Studio,也可以通过更改设置来编辑 C# 代码。&nbsp;按shift+f5进行硬刷新
打开App,查看更多内容
随时随地看视频慕课网APP