private IObservable <string> MePath(ProjectItemWrapper projectItemWrapper) { if (projectItemWrapper.TargetFramework != null && (projectItemWrapper.TargetFramework.StartsWith("netcore") || projectItemWrapper.TargetFramework == "netstandard2.1")) { var assembly = projectItemWrapper.GetType().Assembly; var ns = $"{typeof(ModelEditorRunner).Namespace}.WinDesktop."; var resources = Resources(projectItemWrapper, assembly, ns); return(BufferUntilCompleted(WriteFiles(resources)).ObserveOn(System.Reactive.Concurrency.Scheduler.Default) .SelectMany(strings => ConfigureEnvironment(projectItemWrapper, strings.ToObservable()).Concat(strings.ToObservable())) .FirstAsync(s => { var fileName = Path.GetFileName(s); return !fileName.EndsWith("nuget.exe") && fileName.EndsWith(".exe"); })); } return(GridHelper.ExtractME()); }