He puesto algunas Console.WriteLine
llamadas para probar, pero no aparecen en el cuadro de salida.
public static ArrayList myDeliveries = new ArrayList();
public mainForm(){
InitializeComponent();
}
private void mainForm_Load(object sender, EventArgs e){
if (!File.Exists("../../MealDeliveries.txt")){
MessageBox.Show("File not found!");
return;
}
using (StreamReader sr = new StreamReader("../../MealDeliveries.txt")){
//first line is delivery name
string strDeliveryName = sr.ReadLine();
Console.WriteLine("Test content");
while (strDeliveryName != null){
//other lines
Delivery d = new Delivery(
strDeliveryName,
sr.ReadLine(),
sr.ReadLine(),
sr.ReadLine(),
sr.ReadLine(),
sr.ReadLine(),
sr.ReadLine()
);
mainForm.myDeliveries.Add(d);
//check for further values
strDeliveryName = sr.ReadLine();
}
}
displayDeliveries();
}
private void displayDeliveries(){
lstDeliveryDetails.Items.Clear();
Console.WriteLine("Test content");
Console.WriteLine(mainForm.myDeliveries.Count);
foreach (Delivery d in mainForm.myDeliveries){
lstDeliveryDetails.Items.Add(d.DeliveryName);
}
}
¿¿Alguien puede ayudar??
Respuestas:
Si tiene la intención de utilizar esta salida en producción, utilice los miembros de la clase Trace . Esto hace que el código sea portátil, puede conectar diferentes tipos de oyentes y enviarlos a la ventana de la consola, la ventana de depuración, el archivo de registro o cualquier otra cosa que desee.
Si esto es solo un código de depuración temporal que está utilizando para verificar que cierto código se está ejecutando o tiene los valores correctos, entonces use la clase Debug como sugiere Zach .
Si es absolutamente necesario utilizar la consola, puede adjuntar una consola en el
Main
método del programa .fuente
Console
salidas a la ventana de la consola y las aplicaciones de Winforms no muestran la ventana de la consola. Debería poder usarSystem.Diagnostics.Debug.WriteLine
para enviar salida a la ventana de salida en su IDE.Editar: En lo que respecta al problema, ¿ha verificado
mainForm_Load
que realmente está siendo llamado? Puede colocar un punto de interrupción al principio demainForm_Load
para ver. Si no se está llamando, sospecho quemainForm_Load
no está conectado alLoad
evento.Además, es más eficiente y, en general, mejor anular en
On{EventName}
lugar de suscribirse{EventName}
desde clases derivadas (en su caso, anular enOnLoad
lugar deLoad
).fuente
Import System.Diagnostics
hacerlo mucho más simple. Y prefiero usar laTrace
clase para esto.System.Diagnostics.Debug.WriteLine
.Si desea que la
Console.WriteLine("example text")
salida se muestre en la ventana Salida de depuración, cambie temporalmente el tipo de salida de su aplicación de Aplicación de consola a Aplicación de Windows.Desde los menús, elija Proyecto + Propiedades y navegue hasta Tipo de salida: menú desplegable, cambie a Aplicación de Windows y luego ejecute su aplicación
Por supuesto, debería volver a cambiarlo para crear una aplicación de consola destinada a ejecutarse fuera del IDE.
(probado con Visual Studio 2008 y 2010, se espera que funcione también en las últimas versiones)
fuente
El uso
Console.WriteLine( "Test" );
puede escribir mensajes de registro en la ventana de salida (menú Ver -> Salida) en Visual Studio para un proyecto de Windows Forms / WPF.Sin embargo, me encontré con un caso en el que no funcionaba y solo
System.Diagnostics.Debug.WriteLine( "Test" );
funcionaba. Reinicié Visual Studio yConsole.WriteLine()
comencé a trabajar nuevamente. Parece ser un error de Visual Studio.fuente
Si está desarrollando una aplicación de línea de comandos, también puede usar
Console.ReadLine()
al final de su código para esperar a que se presione la tecla 'Enter' antes de cerrar la ventana de la consola para que pueda leer su salida. Sin embargo, tanto las respuestas de seguimiento como de depuración publicadas anteriormente son mejores opciones.fuente
Intente desmarcar la casilla de verificación "Usar modo de compatibilidad administrada" en
Funcionó para mí.
fuente
Cuando ocurre un problema en Mac VS 2017 (que enfrenté).
Ejecute su código de aplicación ahora.
fuente
Hilo antiguo, pero en la consola VS 2015.WriteLine no escribe en la ventana de salida si "Habilitar el proceso de alojamiento de Visual Studio" no está marcado o está deshabilitado en Propiedades del proyecto -> pestaña Depurar
fuente
Seleccionar vista >> Salida para abrir la ventana de salida.
En la ventana de salida, puede ver el resultado.
fuente