2016-02-25 14 views
0

背景:我們有一個包含多個項目的.NET解決方案,其中一些是針對.NET Framework編譯的,一些針對.NET Core(UWP )。我們使用Visual Studio Team Services(Visual Studio Online)來持續構建我們的解決方案。如何將不同的構建參數傳遞給一個解決方案的項目

挑戰:UWP項目需要不同的MSBuild參數和平臺設置。我們按照以下截圖創建了一個構建定義:該解決方案首先使用.NET參數構建。然後,對於每個UWP項目,我們都有一個MSBuild步驟。

問題:每次我們添加,刪除或重命名UWP項目時,我們都必須更新構建定義。我們希望以某種方式自動選擇UWP項目,理想情況下使用Visual Studio Build Step並且不使用自定義腳本。有任何想法嗎?

enter image description here

工作替代:本來我們分裂的解決方案分爲兩個(每個平臺一個解決方案),並有兩個不同的Visual Studio中建立對每個解決方案運行事件。儘管如此,我們更喜歡在單一解決方案中工作

回答

2

沒有任何簡單的方法來實現這個沒有自定義腳本。

您可以嘗試創建一個MSBuild project file並配有獨立的參數添加您的項目,它像以下:

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
<Target Name="Build"> 
    <MSBuild Projects="Project1.csproj" Properties=Arguments1/> 
    <MSBuild Projects="Project2.csproj" Properties=Arguments2/> 
</Target> 
</Project> 

然後你只需要建立項目文件在您的構建定義。但是,這將需要您在添加/更改項目時更新MSProject文件。

0

Msbuild步驟支持通配符,因此如果項目遵循此命名模式,則可以將其設置爲生成**/*.uwp.csproj

相關問題