2

我有當前的問題。我想實施「配置轉換」,讓我的生活更輕鬆。我目前在Visual Studio 2010中有三個構建配置。Debug,QA和Release。 QA構建配置的設置已從發佈構建配置複製而來。Visual Studio 2010 - 配置轉換不工作,未添加自定義生成配置

編輯:這是C-銳Web應用程序項目。

我的網站應用程序項目是我工作的解決方案中的15個項目之一。在我的網站中,當我右鍵單擊web.config文件以「添加配置轉換」時,僅調試和發佈。配置轉換文件的添加,我的QA一個丟失:/

我環顧四周,看見有一個命令行選項類似如下

msbuild "C:\...project.csproj" /t:TransformWebConfig /p:Configuration=QA 

但運行,我碰到下面的錯誤後:

「OutputPath屬性i s沒有設定項目'項目'。請檢查以確保您已爲該項目指定了Configuration和Platform的有效組合。

注意:在命令,我的道路是正確的。

我只是試圖讓所有三個構建配置有自己的.config轉換文件。最簡單的方法是首選,謝謝!

+0

這是一個網站「項目」,或Web應用程序項目?是否有.csproj或.vbproj文件? – 2011-03-09 05:15:32

+0

修改爲提供更多信息 – contactmatt 2011-03-09 05:51:30

+0

您是否爲QA配置指定了平臺(x86,x64,any)? – 2011-03-11 20:43:10

回答

3

一些關於QA的設置並沒有爲的MSBuild做它的事提供足夠的信息給.csproj的。我會重新檢查您的配置設置,平臺映射等

什麼發生的歷史是,在你的.csproj的每個配置/平臺有一個類似的部分:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> 
    <DebugSymbols>true</DebugSymbols> 
    <DebugType>full</DebugType> 
    <Optimize>false</Optimize> 
    <OutputPath>bin\Debug\</OutputPath> 
    <DefineConstants>DEBUG;TRACE</DefineConstants> 
    <ErrorReport>prompt</ErrorReport> 
    <WarningLevel>4</WarningLevel> 
    </PropertyGroup> 

你的QA配置或者不具有定義的或(更可能的)具有沒有<OutputPath>元素的定義。 OutputPath是構建在你的bin中創建「調試」,「發佈」等文件夾的方式/原因。沒有它,msbuild不知道在哪裏輸出csc.exe創建的二進制文件(至少在默認的C#構建定義下)

要進行仔細檢查,請在文本文件中打開.csproj文件。

希望幫助您反向工程的問題。

+0

+1謝謝,這使我朝着正確的方向前進。有關如何修復而不破解文件的細節http://stackoverflow.com/questions/1136884/visual-studio-2008-project-properties-build-configuration-missing-options – JasonCoder 2012-03-22 14:57:47

相關問題