将不确定变为确定~为什么发布项目时用release环境更好些

简介:

之前写过类似的文章,今天决定在简单的说说,在很多时候,我们在发布项目时,直接就发了,没有什么讲究,但我要说的是,VS为我们提供了一些工具,它可能希望我们在发布项目时要讲究一些,呵呵!

调试模式

发布(生产,运营)模式

这就是VS为我们提供的两个模式,当然你也可以根据团队的需要去建立其它的模式,但我和小微认为没那个必要了,呵呵,下面来看看这两种模式在什么时候会用。

首先,如果你在代码中没有用到debug,release,那事实上它们在发布时,这两种模式没有区别,但如果你的代码中用到了,那就不同了,可能一个方法在调试时用,但运营环境时就不需要了,如果调试日志的写入,可能只是调试时用,但运营时就不需要了,但运营时,可能对关键点也需要有日志记录。

看代码:

      /// <summary>
        /// 在调试时使用日志来记录所发生的事件
        /// </summary>
        /// <param name="fmt"></param>
        /// <param name="args"></param>
        [Conditional("DEBUG")]
        static void Logger(string fmt, params object[] args)
        {
            Console.WriteLine("{0}", String.Format(fmt, args).Trim());
        }

而这时,你在debug模式下,运行程序,如果调用了Logger方法,它会正确加载,但如果你使用release去发布或者调试,那么,Logger方法将不会

被执行,这种特性在我们开发中,经常用到。

本文转自博客园张占岭(仓储大叔的博客,原文链接:将不确定变为确定~为什么发布项目时用release环境更好些,如需转载请自行联系原博主。

目录
相关文章
|
4月前
自动检查以确保依赖项始终与使用的electron版本相匹配的小技巧
自动检查以确保依赖项始终与使用的electron版本相匹配的小技巧
23 0
|
5月前
|
小程序 Linux C语言
Linux实现进度条小程序(包含基础版本和模拟下载过程版本)(下)
Linux实现进度条小程序(包含基础版本和模拟下载过程版本)
|
5月前
|
小程序 Linux C语言
Linux实现进度条小程序(包含基础版本和模拟下载过程版本)(上)
Linux实现进度条小程序(包含基础版本和模拟下载过程版本)
|
8月前
|
安全 Java 编译器
JDK21更新内容:舍弃对x86架构32位系统支持
JDK21更新内容:舍弃对x86架构32位系统支持
|
8月前
|
存储 网络协议 测试技术
一份可用的vRA8演示用例
对于很多想要了解VMware vRealize Automation8(后文称vRA)的朋友来说,最令人头疼的不是如何去部署单节点或者三节点群集,而是在部署成功后,如何与包括vCenter(后文称VC)、NSX DataCenter(后文称NSX)等VMware的基础架构组件集成,然后以“演示用例”的形式进行展示和交付。 其实就提供给vRA的演示用例来说,无论是VMware的论坛或者国外的博客,国内外的大拿们都会分享一些干货。无非就是需要各路“攻城狮”花点耐心去搜索、学习和实践。 话接上回,笔者今天准备分享一下自己的演示用例,提供给各位朋友参考。
|
12月前
|
BI
|
API C# 图形学
Unity 关于低版本是否可以引用高版本构建内容的可行性验证
本篇内容以Unity的一个相对较低的版本(2017.4.40)和一个相对较高的版本(2020.3.33),来验证在低版本中是否可以使用高版本中构建的内容。
221 1
Unity 关于低版本是否可以引用高版本构建内容的可行性验证
|
运维 监控 Cloud Native
移除 Staging 环境,加快部署过程
来自 Squeaky 的 Lewis Monteith 在一篇介绍公司部署方案的博文中详细描述了他们在 Staging 环境中发现的几个问题:
219 0
|
Web App开发 安全 Windows
win10_x64更新错误解决: 安装一些更新时出现问题,但我们稍后会重试。如果持续出现这些问题,并且你想要搜索Web或联系支持人员以获取相关信息,以下信息可能会对你有帮助:
可能的原因:  1、windows 服务没打开 win+r,打开【运行】对话框 输入 【service.msc】 找到 【Windows Firewall】和【Internet connection sharing】 都启动,并设为【自动】,重新启动 【设置】--【更新和安全】 2、设置的代理,但是代理没打开 将设置的代理服务器打开。
6350 0
|
Kubernetes Java 测试技术
SpringBoot配置升级,旧的已过时,新的人未知
SpringBoot配置升级,旧的已过时,新的人未知
540 0