public static bool IsDotnetCoreFromProjectFile(string projectPath, IEnumerable <Guid> projectTypeGuids) { if (projectPath.EndsWith(".csproj", StringComparison.OrdinalIgnoreCase)) { // for csproj, need to 1st make sure its dotnet core ==> !projectTypeGuids.Any() // Common Project System-style no longer has projectTypeGuid // 2ndly, look for sign of web project // either <PackageReference Include="Microsoft.AspNetCore" Version="..." /> // for dotnet core project created with 2.0 toolings look for "Microsoft.AspNetCore.All" // for dotnet core project created with 2.1 toolings look for "Microsoft.AspNetCore.App" // for preview3 its web.config file return(!projectTypeGuids.Any() && (VsHelper.IncludesAnyReferencePackage(projectPath, "Microsoft.AspNetCore", "Microsoft.AspNetCore.All", "Microsoft.AspNetCore.App") || IsWebAppFromFolderStruct(projectPath))); } else if (projectPath.EndsWith(".xproj", StringComparison.OrdinalIgnoreCase)) { // for dotnet core preview 2 and before return(IsWebAppFromFolderStruct(projectPath)); } return(false); }
public static bool IsDotnetCoreFromProjectFile(string projectPath, IEnumerable <Guid> projectTypeGuids) { if (projectPath.EndsWith(".csproj", StringComparison.OrdinalIgnoreCase)) { // for csproj, need to 1st make sure its dotnet core ==> !projectTypeGuids.Any() // Common Project System-style no longer has projectTypeGuid if (projectTypeGuids.Any()) { return(false); } // ASP.NET CORE 2.2 and lower requires these // either <PackageReference Include="Microsoft.AspNetCore" Version="..." /> // for dotnet core project created with 2.0 toolings look for "Microsoft.AspNetCore.All" // for dotnet core project created with 2.1 toolings look for "Microsoft.AspNetCore.App" if (VsHelper.IncludesAnyReferencePackage(projectPath, "Microsoft.AspNetCore", "Microsoft.AspNetCore.All", "Microsoft.AspNetCore.App")) { return(true); } // look for web.config or wwwroot if (IsWebAppFromFolderStruct(projectPath)) { return(true); } // if ASP.NET CORE 3.X check for <Project Sdk="Microsoft.NET.Sdk.Web"> return(VsHelper.IsAspNetCoreSDK(VsHelper.GetProjectSDK(projectPath)) && VsHelper.IsDotNetCore3(VsHelper.GetTargetFramework(projectPath))); } else if (projectPath.EndsWith(".xproj", StringComparison.OrdinalIgnoreCase)) { // for dotnet core preview 2 and before return(IsWebAppFromFolderStruct(projectPath)); } return(false); }
public static bool IsCSharpFunctionFromProjectFile(string projectPath) { return(VsHelper.IncludesAnyReferencePackage(projectPath, "Microsoft.NET.Sdk.Functions")); }