爱上MVC~Web.Config的Debug和Release版本介绍

回到目录

对于web.config来说,我们不会陌生,主要对站点进行相关参数的配置,当它被修改后,IIS里对应的应用程序池会被重启,而对于config里的一些配置我们一般使用比较多的是数据连接串connectionString,配置串appSettings,友好提示控制customErrors等,而今天我们要说的是配置文件config里的两种模式Debug和Release.

一般地,我们一个网站至少会对应有测试环境和生产环境两种,有的可能更多,而如果有两种的话我们的配置文件可以根据debug和release模式来做发布的区别,发测试时用debug模块,发生产环境用release模块,这种个模式对应的各种配置可能也是不一样的,看一下文件结构

web.config源文件

  <connectionStrings>
    <add name="MyDbContext" connectionString="Data Source=localhost;port=3306;Initial Catalog=erp;user id=root;password=root;Charset=utf8" providerName="MySql.Data.MySqlClient" />
  </connectionStrings>

测试环境web.debug.config

  <connectionStrings>
    <add name="MyDbContext"
      connectionString="Data Source=外测;Initial Catalog=MyReleaseDB;Integrated Security=True"
      xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
  </connectionStrings>

生产环境web.release.config

  <connectionStrings>
    <add name="MyDbContext"
      connectionString="Data Source=外正;Initial Catalog=MyReleaseDB;Integrated Security=True"
      xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
  </connectionStrings>

进行发布之后,我们看一下合并后的web.config(我们采用release模块进行发布)

发布命令

dotnet frameworks

msbuild /t:ResolveReferences;Compile /t:_CopyWebApplication /p:Configuration=Release /p:WebProjectOutputDir=C:\Jenkins_Publish /p:OutputPath=C:\Jenkins_Publish\bin  

dotnet core

dotnet publish  "%WORKSPACE%\src\LindAgileCore.Api"  -o C:\Jenkins_Publish

发布release版本后的结果

 <connectionStrings>
    <add name="MyDbContext" connectionString="Data Source=外正;Initial Catalog=MyReleaseDB;Integrated Security=True" providerName="MySql.Data.MySqlClient" />
  </connectionStrings>

我们可以看到web.release.config文件的节点把之前的config对应的节点了,发布成功!

回到目录

时间: 2024-10-23 17:05:21

爱上MVC~Web.Config的Debug和Release版本介绍的相关文章

Debug与Release版本区别

Debug与Release版本区别 Debug版本就是调试版本,Visual C++ 6.0默认的就是Debug版本.在Debug版本中,可以使用单步执行.跟踪等功能,但其生成的可执行文件比较大,代码运行比较慢.Release版本就是发行版本,其运行速度较快,可执行文件较小,但在其编译条件下无法执行调试功能.     还有一点,Release版本的exe文件链接的目标是标准的MFC DLL(Use MFC in a shared or static dll).比如MFC42.DLL.这些DLL在

VC下Debug 和 Release 版本区别

Debug 和 Release 并没有本质的区别,他们只是VC预定义提供的两组编译选项的集合,编译器只是按照预定的选项行动.如果我们愿意,我们完全可以把Debug和Release的行为完全颠倒过来.当然也可以提供其他的模式,例如自己定义一组编译选项,然后命名为MY_ABC等.习惯上,我们仍然更愿意使用VC已经定义好的名称.     Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M).至于是否需要DLL支持,主要看你采用的编译选项.如果是基于 ATL的,则Debug

Debug与Release版本的区别详解

原文链接 Debug 和 Release 并没有本质的区别,他们只是VC预定义提供的两组编译选项的集合,编译器只是按照预定的选项行动.如果我们愿意,我们完全可以把Debug和Release的行为完全颠倒过来.当然也可以提供其他的模式,例如自己定义一组编译选项,然后命名为MY_ABC等.习惯上,我们仍然更愿意使用VC已经定义好的名称.     Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M).至于是否需要DLL支持,主要看你采用的编译选项.如果是基于ATL的,则D

VS中 Debug和Release版本的区别

VS Debug和Release版本的区别 1. 变量.大家都知道,debug跟release在初始化变量时所做的操作是不同的,debug是将每个字节位都赋成0xcc(注1),而release的赋值近似于随机(我想是直接从内存中分配的,没有初始化过).这样就明确了,如果你的程序中的某个变量没被初始化就被引用,就很有可能出现异常:用作控制变量将导致流程导向不一致:用作数组下标将会使程序崩溃:更加可能是造成其他变量的不准确而引起其他的错误.所以在声明变量后马上对其初始化一个默认的值是最简单有效的办法

Debug与Release版本的区别

Debug 和 Release 并没有本质的区别,他们只是VC预定义提供的两组编译选项的集合,编译器只是按照预定的选项行动.如果我们愿意,我们完全可以把Debug和Release的行为完全颠倒过来.当然也可以提供其他的模式,例如自己定义一组编译选项,然后命名为MY_ABC等.习惯上,我们仍然更愿意使用VC已经定义好的名称. Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M).至于是否需要DLL支持,主要看你采用的编译选项.如果是基于 ATL的,则Debug和Rel

Asp.net MVC Web.config配置技巧

一.视图引入命名空间的设置 之前经常写这样的代码,而且每个页面都要写: @model IEnumerable<MvcStart.Models.People_Model> 其实有一种很方便的方法,可以通过配置Views文件夹里的Web.config来简化代码.Views文件夹里的Web.config里面的这个地方. <system.web.webPages.razor> <host factoryType="System.Web.Mvc.MvcWebRazorHost

iOS开发debug跟release版本NSLog屏蔽方法

简单介绍以下几个宏: 1) __VA_ARGS__ 是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持).宏前面加上##的作用在于,当可变参数的个数为0时,这里的##起到把前面多余的","去掉,否则会编译出错. 2) __FILE__ 宏在预编译时会替换成当前的源文件名 3) __LINE__宏在预编译时会替换成当前的行号 4) __FUNCTION__宏在预编译时会替换成当前的函数名称 1. 在***-Prefix.pch里

VS2015编译GEOS的debug和release版本

目前GEOS最新的3.7.1版本支持camke进行编译.经过尝试发现通过cmake生成的工程在vs2015下面编译的时候还是存在问题,而且在中文网上也没找到解决方案. 所以还是采用了nmake进行编译.解压出geos-3.7.1文件夹,双击运行其中的autogen.bat. 在目录中找到nmake.opt,这个文件控制着nmake编译的一些参数.记事本打开,找到如下片段: ##############################################################

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

前言:大过年的,写篇文章不容易,还是给自己点个赞~~年前找了下.net安装包的制作方法,发现Visual Studio自带的制作工具使用起来非常麻烦,需要单独下载安装包,并且什么激活认证等等屁事相当麻烦,最坑爹的是它的自定义dialog使用起来有很多的局限性,所以找了很久,终于找到了Advanced Installer.摸索了两天,算是掌握了一些基本的方法,在此做个记录.相信对于需要使用的园友来说绝对是干货,不信可以看看. 本文原创地址:http://www.cnblogs.com/landea