无法找到虚拟路径的物理目录,在Windows Azure项目SDK 1.8(Cannot find

2019-07-03 21:06发布

我从V1.7到V1.8升级的Windows Azure SDK

我的配置的升级换代一部分之前

<Site name="Web">
    <VirtualApplication name="MyprojectService"        physicalDirectory="../../Myproject.Hosts.WebHost" />
</Site>

SDK的升级换代后

我收到以下错误。

错误1找不到合适的物理目录 'd:\项目\ MYPROJECT \分支机构\ Release_092012 \主机\ Myproject.Hosts.AzureHost \ MyprojectAzureHost \ Myproject.Hosts.WebHost' 虚路径网络/ MyprojectService /。 d:\项目\ MYPROJECT \分支机构\ Release_092012 \主机\ Myproject.Hosts.AzureHost \ MyprojectAzureHost \ BIN \发布\ ServiceDefinition.csdef中11 MyprojectAzureHost

我已经通过链接了Azure的Service.Csdef 。 我追加” ../"to的路径:

<Site name="Web">
    <VirtualApplication name="MyprojectService"        physicalDirectory="../../../Myproject.Hosts.WebHost" />
</Site>

但是当我打个包是越来越自动删除,我一次又一次地得到上述错误。

我也试图把完整路径“d:/项目/../ Myproject.Hosts.WebHost”但没有锁。

这是完全在SDK 1.7的工作。 但在SDK 1.8不工作

Answer 1:

我会尝试(使用相同的示例应用程序)来解释两个最新的Windows Azure SDK之间的变化如下所以请看看每一种情况下,并在错误消息中显示的路径:

在以前的SDK中的虚拟目录源被定为项目的根目录默认但是现在最新的SDK中的虚拟目录源设置为项目输出目录,你可以在下面的案例#1看到的。

案例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’制定工作。

您将需要从发行通过您的文件夹结构,走*作为源,然后再跟踪这些以往任何时候都存在,然后组装完整的路径一路。



Answer 2:

sudhAnsu63,很抱歉,这给你带来麻烦。

在升级,在csdef具有相对路径的项目(如这里的情况)至1.8 SDK,你应该看到下面的警告在升级日志关于相对路径的变化。 这种特殊的变化,以更好地支持并行编译制作。

网站元素的physicalDirectory属性包含一个相对路径。 这个路径是相对于在包装时的目标服务定义文件所在的目录。 在以前的版本中这个文件位于项目根目录中。 在这个版本中,默认情况下,该文件位于项目输出目录。 您可能需要更新的相对路径,以反映目标服务定义文件的新位置。



文章来源: Cannot find the physical directory for virtual path, in Windows Azure project SDK 1.8