在 dotnet core Angular 应用程序中重命名 ClientApp 文件夹后,VS2019 调试器失败

Joh*_*icz 5 asp.net-core angular visual-studio-2019

这个问题与另一个问题类似。但另一个问题的解决方案阻止在修改后的应用程序中设置断点。

我有 Visual Studio Pro 2019 预览版 16.3.0 预览版 2.0 和 .Net Core 3.0.100-preview8-013656。

  1. 运行“dotnet 新角度”

  2. 在 VS2019 中设置 Typescript 断点。按 F5 并检查它是否被击中。

  3. 将 Angular 文件夹的名称从 ClientApp 更改为 XClientApp

  4. 在startup.cs中进行以下更改:

    configuration.RootPath = "XClientApp/dist";
    ...
    spa.Options.SourcePath = "XClientApp";
    
    Run Code Online (Sandbox Code Playgroud)
  5. 在项目文件中进行此更改:

    <SpaRoot>XClientApp\</SpaRoot>
    
    Run Code Online (Sandbox Code Playgroud)
  6. 删除当前的 node_modules 文件夹 - 因为在“npm install”期间,Angular 应用程序文件夹的绝对位置被硬编码到大约 2,000 个位置的许多包中。

  7. 在 VS2019 中设置 Typescript 断点。按F5,观察没有被击中。

  8. 通过断点查看开圆,出现错误:

    "The breakpoint will not currently be hit. Breakpoint set but not yet bound."
    
    Run Code Online (Sandbox Code Playgroud)

除了创建“ClientApp”文件夹的位置之外,SPA 模板还在其他位置将此字符串硬编码到其代码中。无论如何,有没有办法覆盖这个默认值?

[PS:我的主要目标是将 WebApp 代码和 Angular 代码放在单独的文件夹“Backend”和“Frontend”中。我首先尝试仅更改名称,因为我知道如果我什至无法更改文件夹名称,我将无法更改文件夹位置。]

添加信息:我在 GitHub 上搜索了 Angular Spa 模板的源代码。我在“AspNetCore\src\ProjectTemplates\Web.Spa.ProjectTemplates\content\Angular-CSharp.template.config\template.json”中找到了对“ClientApp”的附加引用。在来源 -> 修饰符 -> 排除中:

    "ClientApp/src/api-authorization/**",
Run Code Online (Sandbox Code Playgroud)

更多额外信息:如果我 (1) 使用 F5 运行应用程序,(2) 在 Chrome 浏览器中按 F12,(3) 使用 Chrome 开发工具设置断点,(4) 点击并清除断点,则断点将启动在 Visual Studio 中工作。但我不想每次都经历这个以使断点起作用。