Mercurial > silverbladetech
view MetroWpf/MetroWpf.Framework/Extensions/TaskExtensions.cs @ 81:4ea16a799a03
upload ready after tidy up
author | Steven Hollidge <stevenhollidge@hotmail.com> |
---|---|
date | Mon, 23 Apr 2012 23:20:01 +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; } } }