如何在 Rider 中启用视图热重载? [复制]

Posted

技术标签:

【中文标题】如何在 Rider 中启用视图热重载? [复制]【英文标题】:How to enable the view hot-reloading in Rider? [duplicate] 【发布时间】:2019-10-09 09:21:05 【问题描述】:

我正在使用 Rider 编写一个 MVC 应用程序,一个行为困扰着我:当我修改视图时,我必须重建解决方案并重新启动它才能看到更改。当我从浏览器重新加载网站时,是否可以直接看到修改后的视图?

顺便说一句,IDE(或 dotnet?)不会将视图更改视为重建触发更改。我必须手动单击“重建选定项目”,然后才能启动应用程序的修改版本。这是为什么呢?

【问题讨论】:

【参考方案1】:

这不是 Rider 的问题,它基本上是 ASP.NET MVC Core 的工作原理。您需要启用Razor runtime compilation。来自文档(强调我的):

使用 Razor SDK 在 buildpublish 时编译 Razor 文件。可以通过配置您的应用程序来选择启用运行时编译。

请注意,默认情况下,运行时不包含在此列表中。要改变这种行为:

    添加 Nuget 包Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation

    更改您的 Startup.ConfigureServices 代码以包含运行时编译:

    services
        .AddControllersWithViews()
        .AddRazorRuntimeCompilation();
    

【讨论】:

我已经更新到 dotnet core 3 并解决了一些警告,然后我添加了方法 AddRazorRuntimeCompilation。它不起作用,但是:我在更新视图时看不到更改。 好的,这适用于这个答案:***.com/a/54857110/4498831 用于 Rider 和/或 Razor 类库 (RCL),see this answer。

以上是关于如何在 Rider 中启用视图热重载? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

在 docker 应用程序中启用 webpack 热重载

启用单页应用响应热重载 webpack

如何在 Rider 中启用拼写检查?

如何在wildfly服务器中以编程方式热重载静态资源(如xhtml)以获取爆炸战争中存在的库

如何在 JetBrains Rider 设置中启用“隐式评估”?

Svelte 热重载问题