在 Windows Azure 項目 SDK 1.8 中找不到虛擬路徑的物理目錄
我已將 Windows Azure SDK 從 V1.7 升級到 V1.8
在升級之前我的配置部分是
<Site name="Web"> <VirtualApplication name="MyprojectService" physicalDirectory="../../Myproject.Hosts.WebHost" /> </Site>SDK升級後
我收到以下錯誤。
錯誤 1 找不到虛擬路徑 Web/MyprojectService/ 的物理目錄 ‘D:\Projects\Myproject\branches\Release_092012\Hosts\Myproject.Hosts.AzureHost\MyprojectAzureHost\Myproject.Hosts.WebHost’。D:\Projects\Myproject\branches\Release_092012\Hosts\Myproject.Hosts.AzureHost\MyprojectAzureHost\bin\Release\ServiceDefinition.csdef 1 1 MyprojectAzureHost
我已經瀏覽了Azure Service.Csdef連結。我將“../”附加到路徑:
<Site name="Web"> <VirtualApplication name="MyprojectService" physicalDirectory="../../../Myproject.Hosts.WebHost" /> </Site>但是當我製作一個包時,它會自動刪除,我一次又一次地收到上述錯誤。
我也試過把完整路徑“D:/Projects/../Myproject.Hosts.WebHost”但是沒有鎖。
它在 SDK 1.7 中完美執行。但不適用於 SDK 1.8
我將嘗試解釋兩個最新的 Windows Azure SDK(通過使用相同的範例應用程序)之間的變化,如下所示,因此請查看每種情況以及錯誤消息中顯示的路徑:
在以前的 SDK 中,虛擬目錄源在項目的根目錄中設置為預設值,但現在在最新的 SDK 中,虛擬目錄源設置在項目輸出目錄中,您可以在下面的案例 #1 中看到。
案例一:(失敗)
<VirtualApplication name="MyWeb" physicalDirectory="MvcWebRole1"> Error: Cannot find the physical directory 'C:\Users\avkashc\Documents\Visual Studio 2012\Projects\WindowsAzure2012\WindowsAzure2012\bin\Release\MvcWebRole1' for virtual path Web/MyWeb/.案例2:(失敗)
<VirtualApplication name="MyWeb" physicalDirectory="..\MvcWebRole1"> Error: Cannot find the physical directory 'C:\Users\avkashc\Documents\Visual Studio 2012\Projects\WindowsAzure2012\WindowsAzure2012\bin\MvcWebRole1' for virtual path Web/MyWeb/.案例3:(失敗)
<VirtualApplication name="MyWeb" physicalDirectory="..\..\MvcWebRole1"> Error: Cannot find the physical directory 'C:\Users\avkashc\Documents\Visual Studio 2012\Projects\WindowsAzure2012\WindowsAzure2012\MvcWebRole1' for virtual path Web/MyWeb/.案例4:(成功)
<VirtualApplication name="MyWeb" physicalDirectory="..\..\..\MvcWebRole1">因為上面的案例#4 文件夾設置確實與我的實際 MvcWebRole1 文件夾結構(見下文)匹配,這就是為什麼“……\”設置在我的“PhysicalDirectory”設置中有效。
您需要從作為源的 release* 瀏覽您的文件夾結構,然後一直回溯到它存在的位置,然後組裝完整路徑。
