public MSBuildProjectManager( [ImportMany] IEnumerable <ProjectConfigurationProvider> projectConfigurationProviders, ProjectInstanceEvaluator projectInstanceEvaluator, ProjectChangePublisher projectConfigurationPublisher, OmniSharpForegroundDispatcher foregroundDispatcher, ILoggerFactory loggerFactory) { if (projectConfigurationProviders == null) { throw new ArgumentNullException(nameof(projectConfigurationProviders)); } if (projectInstanceEvaluator == null) { throw new ArgumentNullException(nameof(projectInstanceEvaluator)); } if (projectConfigurationPublisher == null) { throw new ArgumentNullException(nameof(projectConfigurationPublisher)); } if (foregroundDispatcher == null) { throw new ArgumentNullException(nameof(foregroundDispatcher)); } if (loggerFactory == null) { throw new ArgumentNullException(nameof(loggerFactory)); } _logger = loggerFactory.CreateLogger <MSBuildProjectManager>(); _projectConfigurationProviders = projectConfigurationProviders; _projectInstanceEvaluator = projectInstanceEvaluator; _projectConfigurationPublisher = projectConfigurationPublisher; _foregroundDispatcher = foregroundDispatcher; }