[英]How to add controller endpoints to Razor Server in ASP.NET Core 7.0 / VS2022
[英]How to disable Browser Link in ASP.NET Core (.NET 6, VS 2022)
我在 Visual Studio 2022 中禁用了瀏覽器鏈接,並且還禁用了所有熱重載功能。
甚至瀏覽器鏈接儀表板也表明它應該被禁用:
我也不使用任何app.UseBrowserLink();
在我的代碼中的任何地方編寫代碼。 (如ASP.NET Core 中的瀏覽器鏈接中所述。
但是,這些中間件仍然以某種方式出現在請求管道中:
Microsoft.AspNetCore.Watch.BrowserRefresh.BrowserRefreshMiddleware
Microsoft.WebTools.BrowserLink.Net.BrowserLinkMiddleware
這些中間件將其添加到我的 HTML 中:
<!-- Visual Studio Browser Link -->
<script type="text/javascript" src="https://localhost:44399/0928d478a97d441187231f2a1a7cd5e5/browserLink" async="async" id="__browserLink_initializationData" data-requestId="c94cf93088fb44e98f4e499b20ad7bfe" data-requestMappingFromServer="False"></script>
<!-- End Browser Link -->
<script src="/_framework/aspnetcore-browser-refresh.js"></script></body>
每次我保存文件時,它都會重新加載瀏覽器。 我想停止這種行為,但我沒有辦法了。
這是 IIS Express 或 Visual Studio 自動添加的嗎?
我還檢查了所有的包和 DLL,我沒有看到它包含在我的代碼中的任何地方。 它必須通過 Visual Studio 2022 所做的一些“魔法”自動包含在內。
如何停止所有這些重新加載? 我不想要任何瀏覽器鏈接或瀏覽器刷新。 請幫忙,我花了很多時間在這上面,我很絕望。
Visual Studio 使用 .NET Core 的Startup Hook
功能來注入這些中間件,如果您在 Program.cs 的第一行設置斷點並在調試器中評估System.Environment.GetEnvironmentVariable("DOTNET_STARTUP_HOOKS")
,您可以看到哪些掛鈎是從哪里加載。 如果你現在去重命名它試圖加載的文件,它就不能再這樣做了,你就可以從 browserLink 中解脫了!
例如,就我而言,它正在加載
"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\Extensions\Microsoft\Web Tools\Browser Link\Microsoft.WebTools.BrowserLink.Net.dll"
"C:\Program Files\dotnet\sdk\6.0.201\DotnetTools\dotnet-watch\6.0.201-servicing.22124.17\tools\net6.0\any\middleware\Microsoft.AspNetCore.Watch.BrowserRefresh.dll"
所以我重命名了它們,在它們前面添加了一個_
,這使得腳本注入消失了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.