Mercurial > silverbladetech
view MetroWpf/MetroWpf.Framework/Extensions/TaskExtensions.cs @ 114:e51a6af1c98d
working version
author | adminsh@apollo |
---|---|
date | Sat, 19 May 2012 16:53:34 +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; } } }