最初の結論はサポートされていません。ASP.NET Core アプリケーションを IIS にデプロイした後、アプリケーションプールやアプリケーションを停止せずにファイルを直接上書き更新すると、ファイルがロックされたり使用中になったりする問題が発生し、既存のプログラムを停止する必要があります。
公式には IIS のシャドウコピー方式もアプリケーションのダウンタイムを短縮するだけ(最初の 2 つのリンクはこの現象に関する議論で、最後の 2 つのリンクはシャドウコピーに関するものです):
この現象に関する議論:
- https://github.com/dotnet/aspnetcore/issues/3793
- https://github.com/dotnet/AspNetCore.Docs/issues/23733
公式のシャドウコピーのチュートリアル:
- https://learn.microsoft.com/zh-cn/aspnet/core/release-notes/aspnetcore-6.0?view=aspnetcore-6.0#shadow-copying-in-iis
- https://learn.microsoft.com/zh-cn/aspnet/core/release-notes/aspnetcore-7.0?view=aspnetcore-6.0#shadow-copying-in-iis
公式はブルーグリーンデプロイメントモデルを使用してゼロダウンタイムデプロイメントを実現することを推奨しています。