c# - 在调试模式下在 Visual Studio 中定义和读取部署中无法访问的信息
问题描述
我在云系统的 Visual Studio 中获得了 ac# 项目,该项目在 docker 内提供服务。我正在寻找一种在代码中检测的方法:
如果代码在生产环境中的实际部署中运行,或者由于用户单击VS中的播放按钮而在本地运行(是否也可以细化VS部分并区分在调试模式下运行或在不调试的情况下启动程序)?
根据代码从步骤 1 开始运行的模式读取数据。
我的意思的伪代码:
string someData = null;
if(IsRunningFromPlayButtonInVS()) someData = GetVSData();
else if(IsRunningInRealDeployment()) someData = GetDeploymentData();
这样的事情可能吗?即使您只知道检测我正在运行的模式的第一部分,这也很有用。
解决方案
假设程序部署到与构建位置不同的目录,那么您可以测试应用程序的目录以查看它是构建目录还是部署目录或其他位置。获取应用程序文件夹路径问题的最佳方法显示了许多查找目录的方法。
推荐阅读
- flutter - Dart 中的 assert()、异常、错误有什么区别?
- loops - 当我只关心一个变体而不关心变体中的值时,一种惯用的循环匹配方式是什么?
- ruby-on-rails - 如何使用唯一索引允许多个空格(空字符串)?
- concurrency - CockroachDB 读取事务
- python - 对象抛出多个实例,即使它是为单个实例配置的
- javascript - let 关键字在这段代码中是如何工作的?
- hyperledger-fabric - 失去与对等方的连接时,如何使fabric-network addBlockListener 自动重新连接?
- python - 在范围内循环跳过
- python - 使用现有 excel 文件的转换创建新的 excel 文件(使用 python)
- angularjs - 有什么方法可以从 1 而不是 0 启动 XAxis