static void ProjectOperations_PackageReferencesModified(object sender, PackageManagementPackageReferenceEventArgs e) { throttling.Cancel(); throttling = new CancellationTokenSource(); Task.Delay(1000, throttling.Token).ContinueWith((task) => { if (task.IsCanceled) { return; } RebuildTests(); }, throttling.Token, TaskContinuationOptions.None, Runtime.MainTaskScheduler); }
void HandlePackageReferenceAddedRemoved(object sender, PackageManagementPackageReferenceEventArgs e) { if (services == null || e.Project != Project) { return; } foreach (var service in services) { foreach (var dep in service.Dependencies.Where(d => d is PackageDependency).Cast <PackageDependency> ()) { if (dep.PackageId == e.PackageReference.Id) { dep.HandlePackageStatusChanged(); } } } }