2010-10-25 16 views
6

En Visual Studio, nupack agrega una ventana de Power-Shell llamada Package Manager Console. Estoy pensando que este sería un buen lugar para ejecutar comandos de control de origen (estoy usando Mercurial). Sin embargo, el directorio de trabajo predeterminado es mi carpeta de usuarios, por lo que necesito navegar a mi carpeta de códigos cada vez que cargue un nuevo proyecto.Uso de nupack Package Manager Console para establecer la carpeta de trabajo en la carpeta de la solución

Me pregunto si hay un comando de una línea para configurar el directorio de trabajo en la carpeta de la solución. p.ej. ¿Existe algo como esto?

cd $SolutionFolder 

A partir de los resultados de get-variable doens't parecer hay algo inmediatamente disponible, pero nunca he utilizado PowerShell antes, así que tal vez hay una manera de conseguir la carpeta de soluciones?

+0

Me alegro de encontrar que "Package Manager Console" es solo una ventana de Power-Shell; No sabía qué sabor de sintaxis usaba de otra manera –

Respuesta

4

Gracias a Doug para mí apuntando en la dirección correcta. He escrito las instrucciones completas en mi blog aquí:

http://mark-dot-net.blogspot.com/2010/10/change-to-solution-folder-in-package.html

La respuesta básica es que el siguiente comando lo hará:

Split-Path -parent $dte.Solution.FileName | cd 

Para hacerlo más fácilmente disponible, es necesario cree una función en su archivo de script "perfil de usuario", cuya ubicación se encuentra en la variable $profile. Tendrá que crear el archivo si no existe. A continuación, añadir una función:

Function solutionFolder() 
{ 
    Split-Path -parent $dte.Solution.FileName | cd 
} 

Ahora, después de cargar una solución en VS2010, sólo tiene que escribir:

solutionFolder 

y será cambiada la carpeta de trabajo.

2

Trate

$dte.Solution.FileName 
+1

gracias, esto me está moviendo en la dirección correcta. Ahora puedo hacer 'Split-Path -parent $ dte.Solution.FileName' para obtener la carpeta. Ahora necesito averiguar cómo configurar la consola del gestor de paquetes para que esté disponible en una variable o comando sin tener que escribirlo cada vez. –

+0

Puede encontrar el perfil de PowerConsole en esta variable $ PowerConsoleUserProfile. Allí puede configurar funciones, etc. para atajar lo que necesita hacer. –

+0

parece ser $ perfil, pero gracias he logrado que funcione ahora. –

1

No estoy seguro de cuándo cambió, pero la consola del Administrador de paquetes cambia automáticamente el directorio de trabajo a la carpeta de la solución actual cuando abre una aplicación ahora.

Cuestiones relacionadas