2016-11-29 60 views
0

我想在Azure應用程序服務上使用visual studio發佈我的應用程序(mvc和webapi2)。當我發佈正常結構時,一切工作正常。在vs2015上發佈MS-Build的Azure應用程序

然後我試着添加一個不是我解決方案的一部分的文件夾(通過front-enders生成和更改一些方法),所以我已經將必需的文件夾添加到msbuild,並且當我發佈到正常配置文件(本地文件夾)。

在下一步,我嘗試在Azure上發佈項目,在那裏我看到它不會發布我已經添加到ms-build的文件。如何解決它?

我用Google搜索了它,我發現這個:Publish Azure Application with MSBuild答案是使用Power shell發佈。

但鏈接是2歲,我在這2年中Azure成熟了很多。有什麼辦法可以使用visual studio來做到這一點嗎?


請注意,這是不是Publish Azure Application with MSBuild重複,因爲它是2年後,並在2015年VS和Azure的SDK 2.9不2.2。

如果您不同意,或者有任何問題,請發表評論。

+0

什麼樣的應用程序?這是一項雲服務嗎? – stuartd

+0

@stuartd它是應用程序服務上的mvc + webapi2 –

+1

[將問題指向的實際鏈接](https://docs.microsoft.com/en-us/azure/cloud-services/cloud-services-dotnet-continuous-交付)的日期是2016年7月。聽起來就像你需要使用MSBuild,然後這是一個重複的問題。 – stuartd

回答

1

是的,我們可以使用Visual Studio做到這一點。請嘗試在項目文件中添加以下代碼。我爲它創建了一個演示,以下是我的詳細步驟。

<ItemGroup> 
    <Content Include="C:\test\**"> 
     <Link>test\%(RecursiveDir)%(Filename)%(Extension)</Link> 
     <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> 
    </Content> 
    </ItemGroup> 
  1. 創建MVC項目可見的Visual Studio

  2. 通過右鍵點擊項目名稱,從溶液中取出該項目。

enter image description here

  • 編輯項目文件
  • enter image description here

  • 添加腳本中項目文件並重新加載項目。
  • enter image description here 源文件: enter image description here

  • 發佈項目到Azure和從捻工具檢查文件。
  • enter image description here

    更新:使用目標要做到這一點

    <Target Name="CopyFiles" BeforeTargets="PrepareForBuild"> 
        <Copy SourceFiles="@(MySourceFiles)" DestinationFiles="@(MySourceFiles->'C:\Tom\MSBuild\MSBuild\test\%(RecursiveDir)%(Filename)%(Extension)')" /> 
        </Target> 
        <Target Name="BeforeBuild"> 
        <ItemGroup> 
         <Content Include="test\**\*.*" /> 
        </ItemGroup> 
    
    +0

    非常感謝!它工作正常。在創建目標並使用它進行部署之前。有什麼不同? –

    +0

    我們也可以使用target來複制文件並將文件包含在項目中。更多信息請參閱更新的答案。有關MS構建任務的更多詳細信息,請參閱[文檔](https://msdn.microsoft.com/en-us/library/7z253716.aspx)。 –

    相關問題