Browse Source

Merge pull request #20154 from abpframework/SolutionModuleAdder

Make the `add-module` command to compatible with `Blazor webapp` project.
pull/20183/head
liangshiwei 2 years ago
committed by GitHub
parent
commit
37d493b306
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 3
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/BlazorProjectTypeChecker.cs
  2. 4
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/ProjectFinder.cs
  3. 5
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionModuleAdder.cs

3
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/BlazorProjectTypeChecker.cs

@ -8,6 +8,7 @@ public static class BlazorProjectTypeChecker
{ {
var blazorProjectCsprojContent = File.ReadAllText(blazorProjectPath); var blazorProjectCsprojContent = File.ReadAllText(blazorProjectPath);
return !blazorProjectCsprojContent.Contains("Microsoft.NET.Sdk.BlazorWebAssembly"); return !blazorProjectCsprojContent.Contains("Microsoft.NET.Sdk.BlazorWebAssembly") &&
blazorProjectCsprojContent.Contains("Volo.Abp.AspNetCore.Components.Server");
} }
} }

4
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/ProjectFinder.cs

@ -49,10 +49,10 @@ public static class ProjectFinder
FindProjectEndsWith(projectFiles, assemblyNames, ".HttpApi.Host") ?? FindProjectEndsWith(projectFiles, assemblyNames, ".HttpApi.Host") ??
FindProjectEndsWith(projectFiles, assemblyNames, ".Web"); FindProjectEndsWith(projectFiles, assemblyNames, ".Web");
case NuGetPackageTarget.Blazor: case NuGetPackageTarget.Blazor:
return FindProjectEndsWith(projectFiles, assemblyNames, ".Blazor") return FindProjectEndsWith(projectFiles, assemblyNames, ".Blazor.Client")
?? FindProjectEndsWith(projectFiles, assemblyNames, ".MauiBlazor");; ?? FindProjectEndsWith(projectFiles, assemblyNames, ".MauiBlazor");;
case NuGetPackageTarget.BlazorWebAssembly: case NuGetPackageTarget.BlazorWebAssembly:
var BlazorWebAssemblyTargetProject = FindProjectEndsWith(projectFiles, assemblyNames, ".Blazor"); var BlazorWebAssemblyTargetProject = FindProjectEndsWith(projectFiles, assemblyNames, ".Blazor.Client");
return BlazorWebAssemblyTargetProject != null && return BlazorWebAssemblyTargetProject != null &&
!BlazorProjectTypeChecker.IsBlazorServerProject(BlazorWebAssemblyTargetProject) !BlazorProjectTypeChecker.IsBlazorServerProject(BlazorWebAssemblyTargetProject)
? BlazorWebAssemblyTargetProject ? BlazorWebAssemblyTargetProject

5
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionModuleAdder.cs

@ -188,7 +188,7 @@ public class SolutionModuleAdder : ITransientDependency
} }
await PublishEventAsync(6, "Configuring angular projects..."); await PublishEventAsync(6, "Configuring angular projects...");
var moduleName = module.Name.Split('.').Last(); var moduleName = module.Name.Split('.').Last();
ConfigureAngularPackagesForAppModuleFile(angularPath, angularPackages, moduleName); ConfigureAngularPackagesForAppModuleFile(angularPath, angularPackages, moduleName);
@ -301,7 +301,8 @@ public class SolutionModuleAdder : ITransientDependency
private async Task RunBundleForBlazorAsync(string[] projectFiles, ModuleWithMastersInfo module) private async Task RunBundleForBlazorAsync(string[] projectFiles, ModuleWithMastersInfo module)
{ {
var blazorProject = projectFiles.FirstOrDefault(f => f.EndsWith(".Blazor.csproj")); var blazorProject = projectFiles.FirstOrDefault(f => f.EndsWith(".Blazor.Client.csproj")) ??
projectFiles.FirstOrDefault(f => f.EndsWith(".Blazor.csproj"));
if (blazorProject == null || !module.NugetPackages.Any(np => np.Target == NuGetPackageTarget.Blazor)) if (blazorProject == null || !module.NugetPackages.Any(np => np.Target == NuGetPackageTarget.Blazor))
{ {

Loading…
Cancel
Save