Mercurial > silverbladetech
view MetroWpf/MetroWpf.Framework/Extensions/TaskExtensions.cs @ 118:fa4ba8943048
final version
author | stevenh7776 |
---|---|
date | Sun, 27 May 2012 19:53:23 +0100 |
parents | 060f02cd4591 |
children |
line wrap: on
line source
using System; using System.Threading.Tasks; namespace MetroWpf.Framework.Extensions { public static class TaskExtensions { public static void PropagateExceptions(this Task task) { if (task == null) throw new ArgumentNullException("task"); if (!task.IsCompleted) throw new InvalidOperationException("The task has not completed yet."); if (task.IsFaulted) task.Wait(); } public static string GetErrorMessage(this AggregateException ex) { return ex.Flatten().InnerException.Message; } } }