我一直在使用 System.diagnose.Debug
来调试我的大部分应用程序,但现在我需要调试操作系统启动时的行为(我们正在运行后台任务)。这意味着我们没有附加到 VS 调试器,所以我计划做的是将我的调试写入某处的文件。在 winRT 中,所有文件 IO 似乎都是异步的。要使用异步,包含它的方法必须是异步的,这只会在我的调用中冒泡,直到现在所有内容都有一个异步标记(不理想)。有没有办法在不经历所有这些的情况下进行文件调试日志记录?
最佳答案
我建议使用 MetroLog .它有一个 FileStreamingTarget 目标,可以非常轻松地在 WinRT 应用程序上记录内容。
如果您仍想推出自己的产品,可以查看他们的源代码。
编辑
此外,您不必使每个方法都async
。
您可以阻止并等待结果,如下所示:
var folder = Package.Current.InstalledLocation.GetFolderAsync(Folder)
.GetAwaiter()
.GetResult();
var file = folder.GetFileAsync(Filename).GetAwaiter().GetResult();
var content = FileIO.ReadTextAsync(file).GetAwaiter().GetResult();
关于c# - WinRT 记录到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19835357/