C# Metro风格应用程序中缺少.NET功能?
出于好奇,我开始在VisualStudio2011中编写一个小型的“Metro风格”项目,该项目在Windows开发者预览版中发布。它将XAML用于设计,而C#(在我的项目中)用于代码隐藏 C#体验与您在Visual Studio 2008和.NET framework 4.0上获得的体验基本相同,只是我没有找到以下功能:C# Metro风格应用程序中缺少.NET功能?,c#,.net,windows-8,microsoft-metro,C#,.net,Windows 8,Microsoft Metro,出于好奇,我开始在VisualStudio2011中编写一个小型的“Metro风格”项目,该项目在Windows开发者预览版中发布。它将XAML用于设计,而C#(在我的项目中)用于代码隐藏 C#体验与您在Visual Studio 2008和.NET framework 4.0上获得的体验基本相同,只是我没有找到以下功能: System.Console,这使得调试有点困难 还有System.Threading.Thread.Sleep(TimeSpan),这有点不方便,因为这正是我现在需要的
- System.Console,这使得调试有点困难
- 还有System.Threading.Thread.Sleep(TimeSpan),这有点不方便,因为这正是我现在需要的
Debug.WriteLine
和/或Trace.WriteLine
命名空间中的System.Diagnostics
方法。它们打印到调试器输出窗口-在开发人员预览中提供的VS Express中,您需要首先启用该窗口(调试->窗口->输出)
对于
Thread.Sleep
,您能否澄清您认为需要的具体场景 我没有安装预览,因此无法检查。但这里有两个想法:
等待
时间跨度的结束(如异步CTP中的TaskEx.Delay)我的理解是,它只是一个子集;缺少的大部分内容都与同步操作有关(因此Thread.Sleep()的消失并不奇怪)。您还会发现诸如“File.Create”之类的内容无法同步调用。没有
Thread.Sleep()
,但您可以使用Task.Delay(毫秒)代码>
对于那些想知道它有什么用处的人,我建议我在调试中使用它来强调异步行为。TaskEx
中的所有内容现在都被移动到Task
中,因此等待Task。延迟(ms)
应该可以做到。谢谢,调试。编写工作正常。至于Thread.Sleep,我需要它来快速原型化一个循环,但是上面的答案提出的Task.Delay很好地填补了这个空白。很好的解决方案-这相当于System.Diagnostics命名空间中WPF中的Trace.WriteLine()。