2010-03-04 12 views
10

Tengo un proyecto de aplicación web que me gustaría poder ramificar y desarrollar en un sitio IIS totalmente separado y no tener que seguir editando la configuración IISUrl de vbproj cada vez que lo hago eso. He intentado agregar una importación de algunas propiedades estándar para poder mantenerlas fuera del archivo WAP pero cuando las hago referencia en el elemento no me gustan. Sospecho que es porque el elemento IISUrl es parte del cual es un lugar para poner información que no sea de msbuild.Configuración dinámica del IISUrl de un proyecto de aplicación web

Como puede ver en el siguiente código, intento hacer referencia a $ (CustomUrl) en un par de puntos en el WebApp1.vbproj pero cuando abro VS no me está gustando.

Cualquier forma de resolver esto o alguien tiene una mejor manera de derivar proyectos de aplicaciones web.

CustomImport.vbproj

<Project 
    xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup> 
     <CustomUrl>http://localhost/WebUrl_1</CustomUrl> 
    </PropertyGroup> 
</Project> 

WebApp1.vbproj

<Import Project="CustomImport.vbproj"/> 
<WebProjectProperties> 
    <UseIIS>True</UseIIS> 
    <AutoAssignPort>True</AutoAssignPort> 
    <DevelopmentServerPort>1124</DevelopmentServerPort> 
    <DevelopmentServerVPath>/</DevelopmentServerVPath> 
    <IISUrl>$(CustomUrl)</IISUrl> 
    <OverrideIISAppRootUrl>True</OverrideIISAppRootUrl> 
    <IISAppRootUrl>$(CustomUrl)/</IISAppRootUrl> 
    <NTLMAuthentication>False</NTLMAuthentication> 
    <UseCustomServer>False</UseCustomServer> 
    <CustomServerUrl>$(CustomUrl)</CustomServerUrl> 
    <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile> 
</WebProjectProperties> 
+0

¿Has encontrado una solución a esto por casualidad? Recientemente me encontré con este problema.Quiero tener un IISURL por separado en cada rama, pero cuando fusiono ramas, sobrescribe el IISURL y tengo que cambiarlo manualmente cada vez que realizo una fusión (a menos que tenga cuidado de no combinar el archivo vbproj) – Fake

+0

@Fake , no, no he encontrado una solución para esto todavía. –

Respuesta

0

he sido azotado por el mismo problema desde hace varios años. El problema persiste desde Visual Studio .NET (2003) hasta ahora (VS 2010). He buscado una solución automatizada para el cambio de nombre automático de URL pero sin éxito.

Lo que he estado haciendo para evitar este problema se está expandiendo de manera más y tener un montón de diferentes áreas de trabajo:

rama principal de los proyectos en curso -> Poder para Dev-Team -> Poder para el apoyo y largo -la integridad del código de tiempo (esta es la rama más utilizada por mí) -> Mis ramas personales personalizadas que tienen diferentes URLs establecidas

Sé que no es la mejor solución, pero esta es la mejor que pude encontrar.

10

creo que podría tener una solución para esto en VS2010.

Haga clic derecho en el proyecto en VS2010 y vaya a Propiedades. En la pestaña Web, desmarque la opción "Aplicar la configuración del servidor a todos los usuarios (almacenar en el archivo del proyecto)". Lo que esto hace es forzar que todas las configuraciones se almacenen en un archivo .csproj.user [Nombre del proyecto web] en lugar de en el archivo del proyecto en sí. (El mío es un proyecto de C# en lugar de VB, pero supongo que funciona igual) Esto le permite tener diferentes configuraciones de servidor en cada máquina que está desarrollando, pero al mismo tiempo compartir el resto de la configuración.

Tuve que hacer esto porque estoy usando certificados SSL en cada máquina de desarrollo (estación de trabajo y computadora portátil) por lo que la URL del proyecto es diferente, pero no quiero tener que desordenar manualmente la URL en cada máquina. más de una vez y preocúpate mientras verifico mi código en control de fuente.

Una vez que haya realizado la configuración inicial en una máquina después de obtener la última fuente, su archivo .user conserva la configuración. Siempre y cuando no esté revisando los archivos .user en el control de código fuente, esto parece funcionar bien.

+0

Esto debe marcarse como la respuesta correcta, también lo he probado en VS 2017 en caso de que alguien se encuentre con esto pronto. – SM3RKY

+0

Sí, esto funciona en futuras versiones de VS también. Estoy de acuerdo contigo en marcar esto como la respuesta correcta, pero ¿qué puedes hacer? :) –

Cuestiones relacionadas