为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

C#
POPMUISE 2023-08-27 10:24:30
我有一个ASP.Net MVC Core application引用了Razor class library的SomePage.cshtml。调试应用程序时,我可以在应用程序中编辑页面ASP.Net MVC Core,并且更改会反映在浏览器中(刷新后)。但是当我在 中编辑页面时Razor Class Library,更改在浏览器中不可见(刷新后)。我需要停止应用程序并重新启动 - 然后更改将在浏览器中可见。有没有办法在不重新启动的情况下刷新 Razor 类库中编辑的页面?
查看完整描述

3 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

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



查看完整回答
反对 回复 2023-08-27
?
慕姐8265434

TA贡献1813条经验 获得超2个赞

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));

    });

}

查看完整回答
反对 回复 2023-08-27
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

您可以在不停止解决方案的情况下编辑 .chtml 文件。只需在我们更正后刷新页面即可。如果您使用 Visual Studio,也可以通过更改设置来编辑 C# 代码。 按shift+f5进行硬刷新



查看完整回答
反对 回复 2023-08-27
  • 3 回答
  • 0 关注
  • 136 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信