2017-02-11 116 views
1

我已經創建了一個針對.net框架(不是多平臺核心)的asp.net mvc核心應用程序,因爲我想包括標準.net框架庫並運行跨平臺與我無關,因爲我將在Azure中託管。構建VS2017 .net核心應用程序,其目標是完整的.net框架

該解決方案是這樣的:

Project Files

我試圖得到一個VSTS建立與這個項目的工作(這是一個更大的解決方案的一部分),但建設時,我得到了以下錯誤:

Build errors

這似乎是一個常見的錯誤。我的構建定義應該如何構建這些基於.csproj的項目?似乎有很多信息,但沒有明確的答案。希望答案可以在這裏,人們可以停止在其他地方尋找關於如何獲得持續集成構建的信息。

在解決方案級別的附註中,我發現沒有包含我的nuget包的包文件夾,爲什麼?該項目肯定包含nuget包。

+0

您是否用Luca的解決方案解決了這個問題?您需要設置一個私人構建代理。 –

+0

@strain-MSFT是的。 –

回答

2

您的項目使用最新的基於MSBuild的.NET Core項目文件。 該擴展仍然是.csproj,但XML模式與.NET46(和以前的版本)中使用的普通.csproj不同。

你需要合適的工具來建立這樣的.csproj文件,例如:

  • 的Visual Studio 2017年:在您的私人生成代理安裝; VSTS託管構建代理沒有安裝VS2017;
  • .NET Core SDK 1.0.0-preview4-004233(或更新版本):此SDK包含基於MSBuild .NET Core的項目的命令行工具'dotnet'。

請注意,在您的構建日誌中,所使用的msbuild是隨VS2015(版本14.0)一起提供的,而不支持這樣的.csproj格式文件。另一方面,如果您不需要多平臺或.NET Core的其他好處,爲什麼要使用它?剛剛創建了一個面向.NET 4.6的普通ASP.NET 4 Web項目。

+0

我正在使用它,因爲項目結構優於舊項目。 –

+0

我確實必須創建一個私人構建代理,但我不需要安裝Visual Studio。只需要dotnet核心cli工具和.net framework 4.6.2 sdk和定位包。 –

+0

是的!第二個選項(「.NET Core SDK」)確實包含.NET Core CLI :) –

相關問題