public bool IsDotNetCoreSdkInstalled() { if (DotNetCoreSdk.IsInstalled || MSBuildSdks.Installed) { return(DotNetCoreSdk.IsSupported(Project.TargetFramework)); } return(false); }
public DotNetCoreProjectExtension() { try { DotNetCoreSdk.EnsureInitialized(); } catch (Exception ex) { LoggingService.LogInternalError("DotNetCoreProjectExtension sdk initialization failed", ex); } }
protected override void OnPrepareForEvaluation(MSBuildProject project) { base.OnPrepareForEvaluation(project); if (!HasSdk) { return; } sdkPaths = DotNetCoreSdk.FindSdkPaths(dotNetCoreMSBuildProject.Sdk); }
public override Task <SolutionItem> LoadSolutionItem(ProgressMonitor monitor, SolutionLoadContext ctx, string fileName, MSBuildFileFormat expectedFormat, string typeGuid, string itemGuid) { return(Task.Run(() => { if (CanRead(fileName, typeof(SolutionItem))) { DotNetCoreSdk.EnsureInitialized(); return MSBuildProjectService.LoadItem(monitor, fileName, MSBuildFileFormat.VS2012, typeGuid, itemGuid, ctx); } throw new NotSupportedException(); })); }
public void Show() { if (IsUnsupportedVersion || IsNetStandard) //for .net standard we'll show generic message { Message = DotNetCoreSdk.GetNotSupportedVersionMessage(); } else { Message = DotNetCoreSdk.GetNotSupportedVersionMessage(RequiredDotNetCoreVersion.OriginalString); downloadUrl = DotNetCoreDownloadUrl.GetDotNetCoreDownloadUrl(RequiredDotNetCoreVersion); } MessageService.GenericAlert(message); }
protected override void OnPrepareForEvaluation(MSBuildProject project) { base.OnPrepareForEvaluation(project); if (!HasSdk) { return; } sdkPaths = DotNetCoreSdk.FindSdkPaths(dotNetCoreMSBuildProject.Sdk); if (!sdkPaths.Exist) { return; } dotNetCoreMSBuildProject.ReadDefaultCompileTarget(project); }
public void Prompt() { var items = new InfoBarItem [] { new InfoBarItem(GettextCatalog.GetString("Download .NET Core"), InfoBarItemKind.Button, DownloadButtonClicked, true) }; if (IsUnsupportedVersion || IsNetStandard || RequiredDotNetCoreVersion == null) //for .net standard we'll show generic message { Message = DotNetCoreSdk.GetNotSupportedVersionMessage(); } else { Message = DotNetCoreSdk.GetNotSupportedVersionMessage(RequiredDotNetCoreVersion.OriginalString); downloadUrl = DotNetCoreDownloadUrl.GetDotNetCoreDownloadUrl(RequiredDotNetCoreVersion); } IdeApp.Workbench.ShowInfoBar(false, new InfoBarOptions(Message) { Items = items }); }
protected override void OnItemReady() { base.OnItemReady(); FileService.FileChanged += FileService_FileChanged; if (!IdeApp.IsInitialized) { return; } if (HasSdk && !IsDotNetCoreSdkInstalled()) { var requiredVersion = DotNetCoreVersion.Parse(Project.TargetFramework.Id.Version); ShowDotNetCoreNotInstalledDialog(DotNetCoreSdk.GetNotSupportedVersionMessage(requiredVersion.OriginalString), requiredVersion); } if (Project.ParentSolution == null) { return; } if (Project.ParentSolution.ExtendedProperties.Contains(GlobalJsonPathExtendedPropertyName)) { return; } //detect globaljson var globalJsonPath = sdkPaths.LookUpGlobalJson(Project.ParentSolution.BaseDirectory); if (globalJsonPath == null) { return; } Project.ParentSolution.ExtendedProperties [GlobalJsonPathExtendedPropertyName] = globalJsonPath; DetectSDK(); }