asp.net - studio - No se puede encontrar el directorio físico para la ruta virtual, en el SDK 1.8 del proyecto de Windows Azure
manage azure (2)
Intentaré explicar los cambios entre los dos últimos SDK de Windows Azure (usando la misma aplicación de ejemplo) como se muestra a continuación, así que revise cada caso y la ruta que se muestra en el mensaje de error:
En el SDK anterior, la fuente del directorio virtual se configuró de forma predeterminada en la raíz del proyecto; sin embargo, ahora, en la última versión del directorio virtual, la fuente del directorio virtual está configurada en el directorio de resultados del proyecto, que puede ver en el Caso 1 a continuación.
Caso 1: (Fallido)
<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/.
Caso 2: (Fallido)
<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/.
Caso 3: (Fallido)
<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/.
Caso 4: (Éxito)
<VirtualApplication name="MyWeb"
physicalDirectory="../../../MvcWebRole1">
Debido a que la configuración de la carpeta del caso # 4 anterior coincide con mi estructura de carpetas MvcWebRole1 real (se ve a continuación), por eso la configuración "......" funciona en mi configuración de "Directorio Físico".
Necesitará recorrer su estructura de carpetas desde la versión * como su fuente y luego realizar un seguimiento de todo el camino donde sea que exista y luego ensamblar la ruta completa.
He actualizado el SDK de Azure de Windows de V1.7 a V1.8
Antes de actualizar la parte de mi configuración era
<Site name="Web">
<VirtualApplication name="MyprojectService" physicalDirectory="../../Myproject.Hosts.WebHost" />
</Site>
Después de la actualización de SDK
Estoy recibiendo siguiente error.
Error 1 No se puede encontrar el directorio físico ''D: / Projects / Myproject / branches / Release_092012 / Hosts / Myproject.Hosts.AzureHost / MyprojectAzureHost / Myproject.Hosts.WebHost'' para la ruta virtual Web / MyprojectService /. D: / Projects / Myproject / branches / Release_092012 / Hosts / Myproject.Hosts.AzureHost / MyprojectAzureHost / bin / Release / ServiceDefinition.csdef 1 1 MyprojectAzureHost
He pasado por el enlace Azure Service.Csdef . y anexé "../"a la ruta:
<Site name="Web">
<VirtualApplication name="MyprojectService" physicalDirectory="../../../Myproject.Hosts.WebHost" />
</Site>
pero cuando hago un paquete, se elimina automáticamente y recibo el error anterior una y otra vez.
También he intentado poner la ruta completa "D: / Projects /../ Myproject.Hosts.WebHost" pero no hay bloqueo.
Estaba funcionando perfectamente en SDK 1.7. pero no funciona en SDK 1.8
sudhAnsu63, lo siento esto le causó problemas.
Al actualizar un proyecto que tiene rutas relativas en csdef (como es el caso aquí) al SDK 1.8, debería ver la siguiente advertencia en el registro de actualización sobre el cambio en la ruta relativa. Este cambio específico se realizó para soportar mejor las construcciones paralelas.
El atributo physicalDirectory del elemento Site contiene una ruta relativa. Esta ruta es relativa al directorio en el que reside el archivo de definición de servicio de destino cuando se empaqueta. En versiones anteriores, este archivo estaba ubicado en el directorio del proyecto raíz. En esta versión, de forma predeterminada, este archivo se encuentra en el directorio de resultados del proyecto. Es posible que deba actualizar la ruta relativa para reflejar la nueva ubicación del archivo de definición de servicio de destino.