2011-05-06 68 views
4

我想在一個站點內部有一個虛擬應用程序。我已經修改我的ServiceDefinition.csdef作爲忽略Windows Azure虛擬應用程序中的文件

<Site name="Web"> 
     <VirtualApplication name="MyVirtualApp" physicalDirectory="[path to my other web app]" /> 
     <Bindings> 
      <Binding name="HttpIn" endpointName="HttpIn" />   
     </Bindings> 
     </Site> 

當我創建了包,我看到它包含.cs文件夾obj過。這是沒用的。我不希望這些文件包含在我的軟件包文件(.cspkg)中。

我應該怎麼做,以便在我發佈時,這種類型的文件不應該包含在包文件中?

回答

1

作爲解決方法,我創建了一個Web Deployment Project。爲了排除在輸出文件,你需要把

<ExcludeFromPackageFiles Include="[your file]"> 
    <FromTarget>Project</FromTarget> 
</ExcludeFromPackageFiles> 

而在ServiceDefinition.csdef我指定的輸出路徑網絡部署項目

<VirtualApplication name="MyVirtualApp" physicalDirectory="[output path of my web deployment project]" /> 
1

我不認爲你可以告訴視覺工作室做到這一點。它只爲你的角色相關的網站項目做到這一點。所以你可以做的是將你的輸出文件複製到後期製作事件中的特殊文件夾。並指出你的物理目錄:)

+0

爲我所用的網絡部署項目中的解決方法。看到我的答案。 – 2011-05-26 07:43:37

1

使用中所需的原始網站項目的發佈功能成爲一個虛擬應用程序。發佈到文件系統中的單獨文件夾中,就好像它將成爲系統上由IIS託管的網站一樣。發佈功能將刪除所有不必要的文件。

在.csdef文件

然後,使用路徑您發佈的網站,而不是到Web項目中的文件夾。

0
  1. Create a WebDeploy Profile
  2. 網羅所有文件旁邊排除到<OutputPath>上.csproj像這樣<ExcludeFoldersFromDeployment>bin\file1.dll;file3.csv</ExcludeFoldersFromDeployment>。詳細信息here
  3. 如果你想,定義一個相對路徑上.pubxml文件(在Web項目下的屬性\ PublishProfiles通常會發現)發佈放置位置如<publishUrl>bin\WebDeployDropLocation</publishUrl>
  4. 提供的放置位置,以ServiceDefinitioin.csdef像這樣: <Site name="Web" physicalDirectory="..\..\..\MyWebApp\bin\WebDeployDropLocation">根據<Sites>。文檔here
  5. 發佈WebProject並驗證文件,從WebRole項目創建包。
  6. 編輯導致.cspkg的文件名,將其更改爲.zip文件來驗證內容
相關問題