[英]Service Fabric Debugging
当我尝试以调试模式从VS运行SF服务时,得到以下信息:
试图升级应用程序,但应用程序的版本未更改。 确保在升级之前更新应用程序清单中的版本。
我必须在SF Explorer中手动删除此服务的位置。 是否有办法以某种方式跳过此删除步骤,以便正在调试的服务仅“覆盖”旧服务?
您可以将调试器附加到已部署的应用程序进程。 转到调试->附加到进程。 您可以选择多种服务。 请注意,Visual Studio需要在管理员模式下运行。
如果要调试服务的启动代码,请使用Debugger.Launch()
。 此方法将阻止调用代码,并提示您选择调试器,您可以选择一个正在运行的VS实例。 不幸的是,存在一个错误,并且VS2017没有作为选项出现。 另外,您可以在启动时调用Thread.Sleep(<duration>)
并快速附加调试器,此最后一个选项始终有效。
发生这种情况是因为未正确设置应用程序调试模式的配置。 该设置可能已设置为在停止调试时将应用程序保留在Service Fabric中,这样,在第一次部署后,该应用程序将继续运行部署到SF的旧代码。
您的另一个选项将其设置为“ 删除应用程序”或“ 刷新应用程序”
供参考,您可以选择:
应用程序调试模式
- 刷新应用程序此模式使您可以快速更改和调试代码,并支持在调试时编辑静态Web文件。 仅当本地开发集群处于1-Node模式时,此模式才有效。 这是默认的应用程序调试模式。
- 删除应用程序导致在调试会话结束时删除应用程序。
- 自动升级当调试会话结束时,应用程序将继续运行。 下一个调试会话会将部署视为升级。 升级过程将保留您在上一个调试会话中输入的所有数据。
- 保留应用程序当调试会话结束时,应用程序将继续在群集中运行。 在下一个调试会话开始时,将删除该应用程序。
该文档详细解释了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.