日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何让VS根据编译环境选择相应的配置文件

發(fā)布時間:2025/3/13 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何让VS根据编译环境选择相应的配置文件 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

其實微軟還是蠻有創(chuàng)造力的,一個配置文件居然弄了這么多的形式,從原來的ini到現(xiàn)在的xml,總而言之讓我們這些在微軟殿堂里的程序員翹著屁股追趕。

微軟最新的配置文件實際上就是個xml文件,以后綴名.config表示,但是在VS中默認(rèn)只有一個配置文件,app.config或者web.config,有時我們想添加自己命名的配置文件卻感覺很乏力,我這篇博客就是來介紹下如何讓VS能夠按照我們的意愿使用配置文件。

使用情景:我們現(xiàn)在有兩套WCF服務(wù),一個是測試服務(wù),一個是正式服務(wù),我們想讓VS在Debug模式下選擇包含測試服務(wù)的配置文件,在Release模式下選擇包含正式服務(wù)的配置文件。

這里使用的技術(shù)是MSBuild,在VS自帶的MSDN中有詳細(xì)闡述,這項技術(shù)主要用于定制VS的編譯過程

本篇博客主要參考了文章http://icelava.net/forums/thread/2920.aspx,如果打不開就FQ吧!

首先新建一個WinForm項目,在項目中添加兩個配置文件app.Debug.config和app.Release.config(如果有自帶的App.config,可將其刪除),并在兩個配置文件中添加測試數(shù)據(jù)

然后打開項目所在文件夾,用文本編輯器打開項目文件,在這里我推薦Notepad++,當(dāng)然你可以根據(jù)個人習(xí)慣選擇自己喜歡的編輯器。

注意:千萬不要用寫字板打開,因為寫字板會改變文件的換行符,使程序不能正確加載配置文件

打開文件最后處會看到下面一段注釋的內(nèi)容,意思很清楚就不用解釋了

<!-- To modify your build process, add your task inside one of the targets below and uncomment it. Other similar extension points exist, see Microsoft.Common.targets.<Target Name="BeforeBuild"></Target><Target Name="AfterBuild"></Target>-->

修改AfterBuild任務(wù)如下:

1 <Target Name="AfterBuild"> 2 <Delete Files="$(TargetDir)$(TargetFileName).config" /> 3 <Copy SourceFiles="$(ProjectDir)\app.$(Configuration).config" 4 DestinationFiles="$(TargetDir)$(TargetFileName).config" /> 5 </Target>

這段代碼的意思就是在Build完成時候,刪除目標(biāo)文件夾下的xxx.config文件,并根據(jù)當(dāng)前配置環(huán)境將項目文件夾中對應(yīng)的config文件內(nèi)容復(fù)制至目標(biāo)文件夾,保存名稱為相應(yīng)的xxx.config。

編輯完成后保存,這是VS會提示

?

點擊“重新加載”即可,然后在Form1中添加測試代碼:

1 public partial class Form1 : Form 2 { 3 public Form1() 4 { 5 InitializeComponent(); 6 label1.Text = System.Configuration.ConfigurationManager.AppSettings["ILoveSleep"]; 7 } 8 }

下面是運行結(jié)果:

Debug模式下

Release模式下

從運行結(jié)果來看,已經(jīng)達(dá)到了預(yù)期目的,現(xiàn)在需要做的就是在app.Debug.config中添加測試服務(wù)的配置,在app.Release.config中添加正式服務(wù)的配置,當(dāng)選擇Debug模式時,程序會連接測試服務(wù),Release模式時,程序會連接正式服務(wù)!

MSBuild十分強大,用好了幾乎可以對整個VS編譯過程進(jìn)行定制,完成自己想要的任何操作!

這里是文中簡單示例的源碼:WinForm.rar

轉(zhuǎn)載于:https://www.cnblogs.com/ILoveSleep/p/3181044.html

總結(jié)

以上是生活随笔為你收集整理的如何让VS根据编译环境选择相应的配置文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。