tutorial programacion plataforma net lenguaje language funciones framework componentes caracteristicas asp c# .net windows-8 microsoft-metro

c# - programacion - windows net



¿Falta las características de.NET en la aplicación estilo Metro? (4)

No hay Thread.Sleep() , pero puedes usar Task.Delay(milliseconds);

Para aquellos que se preguntan para qué sirve, les digo que lo uso en la depuración para enfatizar el comportamiento asíncrono.

En su mayor parte por curiosidad, comencé a programar un pequeño proyecto "Metro Style" en Visual Studio 2011, el que se lanzó en Windows Developer Preview. Combina XAML para el diseño y C # (en mi proyecto) para el código subyacente.

La experiencia de C # es casi idéntica a la que obtienes en Visual Studio 2008 con .NET framework 4.0, a excepción de estas características que no pude encontrar:

  • System.Console , que dificulta un poco la depuración,
  • Y System.Threading.Thread.Sleep (TimeSpan) , que es un poco más inconveniente ya que eso es exactamente lo que necesitaba en este momento.

Entonces, ¿estas características realmente faltan / están deshabilitadas, o simplemente busqué en el lugar equivocado? Gracias por adelantado.


No tengo instalada la vista previa, así que no puedo verificarla. Pero aquí hay dos pensamientos:

  1. System.Console probablemente no esté disponible, porque no hay una Consola en las aplicaciones estilo Metro. Compruebe si Debug.WriteLine está disponible. Escribe directamente en la ventana de depuración en Visual Studio.

  2. Se supone que las aplicaciones estilo metro no bloquean los hilos durante períodos prolongados. Todo lo que lleve más de unos pocos milisegundos debe hacerse de forma asíncrona. Busque alguna forma de ejecutar una devolución de llamada asíncrona después de algún tiempo, por ejemplo, un temporizador. O puede await el final de un período de tiempo (como TaskEx.Delay en el CTP de Async).


Para la "depuración de printf", sugiero que utilice los Debug.WriteLine y / o Trace.WriteLine del espacio de nombres System.Diagnostics . Se imprimen en la ventana de salida del depurador: en VS Express, que se incluye en la Vista previa del desarrollador, deberá habilitarlo primero (Depuración -> Windows -> Salida).

Para Thread.Sleep , ¿puede aclarar el escenario específico para el que cree que es necesario?