protected IEnumerable <Application> GetAllApplications() { var site = _iisManager.GetIisSite(_environment.DefaultSiteName); var installations = GetInstallations().ToList(); foreach (var app in site.IisApplications) { /* Skip apps that in different directory from Ac installation's folder in config */ if (!app.Path.StartsWith(_environment.GlobalPath, StringComparison.OrdinalIgnoreCase)) { continue; } var acapp = new Application { Name = _fileWrapper.GetFileName(app.Path), Uris = app.Uris, PhysicalPath = app.Path, Version = app.Version, InstallationName = installations.FirstOrDefault(i => _fileWrapper.GetParentPath(app.Path).Equals(i?.PhysicalPath, StringComparison.OrdinalIgnoreCase))?.Name }; yield return(acapp); } }