这个问题类似于this other question。但是,另一个问题的解决方案阻止了在修改后的应用中设置断点。
我有Visual Studio Pro 2019预览版16.3.0预览版2.0和.Net Core 3.0.100-preview8-013656。
运行“ dotnet新角度”
在VS2019中设置Typescript断点。按F5并检查是否被击中。
将Angular文件夹的名称从ClientApp更改为XClientApp
在startup.cs中进行以下更改:
configuration.RootPath = "XClientApp/dist";
...
spa.Options.SourcePath = "XClientApp";
在项目文件中进行此更改:
<SpaRoot>XClientApp\</SpaRoot>
删除当前的node_modules文件夹-因为在“ npm install”过程中,Angular app文件夹的绝对位置在大约2,000个地方被硬编码为许多软件包。
在VS2019中设置Typescript断点。按F5,观察它没有被击中。
查看有错误的断点打开的圆圈:
"The breakpoint will not currently be hit. Breakpoint set but not yet bound."
除了在其创建“ ClientApp”文件夹的位置之外,SPA模板还将在此位置将该字符串硬编码到其代码中。反正有没有覆盖此默认设置?
[PS:我的主要目标是将WebApp代码和Angular代码放在单独的文件夹“后端”和“前端”中。我首先尝试仅更改名称,因为我知道,即使我什至不能更改文件夹名称,也无法更改文件夹位置。 ]
添加了信息:我在GitHub上搜索了源代码spa模板的源代码。我在“ AspNetCore \ src \ ProjectTemplates \ Web.Spa.ProjectTemplates \ content \ Angular-CSharp.template.config \ template.json”中找到了对“ ClientApp”的其他引用。 在源代码中->修饰符->排除:
"ClientApp/src/api-authorization/**",
更多信息:如果我(1)使用F5运行该应用程序,(2)在Chrome浏览器中按F12,(3)使用Chrome开发工具设置一个断点,(4)点击并清除断点,然后断点将在Visual Studio中开始工作。但是我不想每次都经过此过程才能使断点正常工作。