protected override IEnumerable <ExecutionTarget> OnGetExecutionTargets(OperationContext ctx, ConfigurationSelector configuration, SolutionItemRunConfiguration runConfig) { var result = new ExecutionTargetGroup(GettextCatalog.GetString("Browser"), "MonoDevelop.AspNetCore.BrowserExecutionTargets"); foreach (var browser in IdeServices.DesktopService.GetApplications("https://localhost", Ide.Desktop.DesktopApplicationRole.Viewer)) { if (browser.IsDefault) { if (Project.HasMultipleTargetFrameworks) { result.InsertRange(0, GetMultipleTargetFrameworkExecutionTargets(browser)); } else { result.Insert(0, new AspNetCoreExecutionTarget(browser)); } } else { if (Project.HasMultipleTargetFrameworks) { result.AddRange(GetMultipleTargetFrameworkExecutionTargets(browser)); } else { result.Add(new AspNetCoreExecutionTarget(browser)); } } } return(result.Count > 0 ? new ExecutionTarget [] { result } : base.OnGetExecutionTargets(ctx, configuration, runConfig)); }