2009-01-22 7 views
6

Pasé la mayor parte de mi tiempo en Visual Studio y usando todas las herramientas IDE, desearía poder dedicar más tiempo a cualquiera de las siguientes opciones.Herramientas de línea de comando (o equivalente) para el desarrollo de .NET

  • la ventana de comandos en Visual Studio
  • cmd.exe
  • Cygwin, MinGW ...
  • PowerShell.
  • ¿Guiones?

¿Cuáles son sus comandos favoritos y esenciales para escribir, a diferencia de los métodos abreviados de teclado o de hacer clic aquí?

+0

favor Marcar como wiki de la comunidad –

Respuesta

2

En mis proyectos más grandes, empecé a crear archivos personalizados build.cmd lotes que a su vez llaman herramientas de línea de comando como:

  • graspx para comprobar archivos .aspx,
  • osql para generar código C# a partir de una SQL esquema   servidor de base de datos y copia de seguridad de la base de datos de desarrollo,
  • scptxfr a la escritura del esquema,
  • msbuild para construir aplicaciones,
  • devenv para construir soluciones de configuración,
  • 7za (7-Zip) de cremallera cosas.

un ocasional IISReset también ayuda;)

+0

mono alternatives: xbuild, mdrun, mcs. Instale mono aquí (http://www.mono-project.com/Main_Page). y Mono se desarrollan aquí (http://monodevelop.com/) –

3

NAnt y booi son las más grandes para mí. NAnt proporciona construcción, y booi proporciona una forma simple de ejecutar el código .NET.

+1

podría proporcionar un enlace a más información sobre Booi (al parecer no es un nombre amistoso de Google) – Glennular

+1

El intérprete interactivo de Boo: http://boo.codehaus.org/Interactive+Interpreter Utilizo IronPython por casi lo mismo – orip

1

Al crear utilidades de línea de comandos de un solo archivo muy pequeñas, me gusta codificar en algo menos engorroso que Visual Studio, como Notepad2. Luego uso mcs, el compilador de línea de comandos incluido con .NET Framework para compilar el código fuente en un ensamblado.

Creo que puede ser divertido y bueno para mi memoria a veces ver cuánto de la estructura realmente recuerdo cómo usar sin usar activamente IntelliSense todo el tiempo. Lo siento, me salí un poco del tema allí. :)

4

Los comandos más importantes de PowerShell son Get-Command (alias gcm) y Get-Member (alias gm). Esos dos comandos le permiten explorar y explotar la mayor parte de la funcionalidad disponible. Get-Member es ideal para explorar y trabajar interactivamente con objetos .NET.

La otra serie de comandos útiles son:

[System.Reflection.Assembly]::LoadFrom($relativepath) 
[System.Reflection.Assembly]::LoadFile($absolutepath) 

que le permiten cargar otros conjuntos en PowerShell para trabajar con ellos.

+0

Y a través de la consola PowerShell de NuGet puede conducir el VS IDE desde la línea de comando : http://www.wintellect.com/CS/blogs/jrobbins/archive/2012/03/30/using-nuget-powershell-to-replace-missing-macros-in-dev-11.aspx – Richard

0

Creo archivos auxiliares por lotes y los ejecuto desde la línea de comandos.

También uso msbuild para crear soluciones de Visual Studio, y nunit-console para ejecutar pruebas de unidad NUnit (tengo un archivo por lotes para eso). Además de todas las bondades normales de cmdline como grep, vim y svn.

0

Un patrón excelente que vi una vez fue tener un comando de precompilación para recuperar el WSDL de un servicio web y generar la clase contenedora adecuada con la herramienta wsdl.exe. Tomé ese mismo patrón en un proyecto reciente e hice que la herramienta xsd.exe generara clases desde mis archivos de esquema XML.

Si bien no escribirás los comandos de forma interactiva, ciertamente necesitas desarrollar algo que funcione bien y estar familiarizado con el host (script .bat, PowerShell, lo que sea). Visual Studio expone algunas variables interesantes similares al entorno para ayudar a ubicar el origen de su proyecto, etc. Cosas buenas.

1

Para el desarrollo de estándares que utilizan csc.exe y msbuild.exe. Otras herramientas útiles son wsdl.exe y svcutil.exe para el desarrollo de servicios web, y en casos excepcionales ildasm.exe y tlbimp.exe.

Oh, sí, y luego Me encanta PowerShell, pero eso es todo un libro sobre su propia :-)

Cuestiones relacionadas