.NET Framework Utiliser IProgress


Exemple

Il est important de noter que la System.Progress<T> ne dispose pas de la méthode Report() . Cette méthode a été implémentée explicitement à partir de l’ IProgress<T> et doit donc être appelée sur un Progress<T> lorsqu’elle est IProgress<T> en IProgress<T> .

var p1 = new Progress<int>();
p1.Report(1); //compiler error, Progress does not contain method 'Report'

IProgress<int> p2 = new Progress<int>();
p2.Report(2); //works

var p3 = new Progress<int>();
((IProgress<int>)p3).Report(3); //works