2012-08-05 48 views
5

A menudo tengo un poco de código que quiero ejecutar de vez en cuando, por ejemplo, inicializar la base de datos, soltar la base de datos, descargar algunos datos de la base de datos y cotejarlos de una manera divertida. Todas estas tareas se pueden representar como funciones independientes en C#.¿Hay alguna extensión de Visual Studio que permita ejecutar funciones como tareas?

Ala una aplicación de consola:

class Program{ 
     static void Task1(){} 
     static void Task2(){} 
     static void Main(){ 
      //Task1(); 
      //Task2(); 
     } 
} 

Aquí, yo comente la función no quiero llamar y ejecutar la función sí quiero llamar. Compila y espera por los resultados.

Estoy buscando una manera de simplificar este proceso. Por ejemplo, en las pruebas unitarias, puede hacer clic con el botón derecho en una función y, a través de alguna magia, ejecutar solo esa función directamente desde Visual Studio.

Quizás haya una extensión que hace esto, pero no he podido encontrarla. La mejor manera que conozco de limpiar esto hasta ahora es hacer fragmentos en LinqPad. Pero creo que debería poder hacer esto directamente desde Visual Studio.

Respuesta

11

Siempre puede ejecutarlos directamente en la ventana Inmediato, incluso sin la aplicación ejecutándose.

Por ejemplo:

?Program.Test1() 
+5

+1, por enseñarme, puede hacerlo sin tener que ingresar al modo de depuración manualmente. Seguro para ser útil. –

+0

Realmente esperaba algo más simple y organizado, pero supongo que esto tendrá que hacer por ahora. Gracias. – Gleno

1

Puede usar el reajuste y crear sus tareas como pruebas unitarias.

Alternativamente, podría escribirlos como macros.

0

Agregue argumentos de línea de comandos. Pase el nombre del método, encuéntrelo de la reflexión e invoque de otra manera. También sería bueno un atributo para decorar métodos para los que esto funcionaría.

2

TestDriven.NET admite la ejecución de métodos arbitrarios como pruebas ad-hoc. Funciona tanto para métodos estáticos como de instancia sin parámetros.

+0

Esto suena potencialmente interesante; pero no funcionó con VS'12. – Gleno

Cuestiones relacionadas