【问题标题】:Visual studio 2022 Hot reload issueVisual Studio 2022 热重载问题
【发布时间】:2021-12-23 08:03:26
【问题描述】:

今天我安装了 VS2022 社区版,在 youtube 上看到了一个热重载的恶魔。当我尝试查看它是如何工作的时,我遇到了一个问题。

我有一个 winform,它有 Load 事件。在加载事件中,我用值初始化标签。在运行时,我更改加载事件中的值并保存文件,但更改不会反映在表单 UI 上。我在那里犯了什么错误....有什么想法吗?

private void Form1_Load(object sender, EventArgs e)
{
    label1.Text = "Hellow";
}

你好拼写错误并且是故意。当我运行程序时,错误的拼写分配给标签。运行后,我将 hello 更改为 hello 并保存文件,但更改不会反映在表单上,​​并且那里显示错误的拼写。

请指导我如何进行热重载?

谢谢

【问题讨论】:

    标签: visual-studio-2022


    【解决方案1】:

    您应该检查应用的目标框架。当我将目标框架更改为 .NET 6.0 时,它就像演示视频一样对我有用。

    来自博文 (https://devblogs.microsoft.com/dotnet/update-on-net-hot-reload-progress-and-visual-studio-2022-highlights) 的摘要:

    • 使用 Visual Studio 2022 并使用调试器启动应用时 基本的热重载体验适用于大多数类型的 .NET 应用程序 和框架版本,这包括 .NET Framework、.NET Core 和 .NET 5+(适用于 C# 和 VB.NET)。应用程序的类型 支持包括 web(代码隐藏更改)、桌面、移动、 云和其他项目类型。这里的关键规则是如果你使用 调试器假定您可以使用热重载并试一试!

    • 使用 Visual Studio 2022 但不使用调试器时(例如 使用 CTRL-F5 启动应用程序)现在甚至可以使用热重载 在针对大多数类型的 .NET 6 应用程序时没有调试器。这 意味着不针对 .NET 6(.NET 5 或更低版本)的应用程序不会 支持“无调试器”场景,必须使用调试器获取 热重载支持。

    • 将 Visual Studio 2022 与 .NET 6 应用程序一起使用时, 支持大多数类型的场景。 这不仅限于 只是上面提到的“无调试器”场景,它还包括 支持 .NET MAUI 和 Blazor 等项目类型 通常在 ASP.NET 应用程序中编辑 Razor 文件和 CSS 热重载。它 还包括其他应用程序框架中的其他小优化。 同时使用 Visual Studio 2022 并将您的应用程序更新到 .NET 6 将 绝对给你最强大的热重载体验,我们 希望你能试一试。

    【讨论】:

    • 嗨,我怎么知道我使用的是 .net 6?请指导我。谢谢
    • dotnet --info 在命令行。热重载不适用于 Blazor wasm 项目。
    【解决方案2】:

    为了使 Hot Reload 起作用,Solutions Configurations 必须设置为 Debug

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-02
      • 2021-12-15
      • 2022-01-09
      • 2022-06-22
      • 2021-12-29
      • 2022-07-31
      • 2022-08-19
      • 2022-01-04
      相关资源
      最近更新 更多