Improve Development Build Time for Net Core 3.1 Blazor Server Side Visual Studio 2019

Viewed 548

We have migrated ( after 4 months work) a project from NEt Core 2.2 to Net Core 3.1 with Blazor Server Side and we have a big difference for Developement Build time in Visual Studio:

  • Net Core 2.2 Visual Studio 2019 : 15 Seconds ( Acceptable )
  • Net Core 3.1 with Blazor Server Side Visual Studio 2019 : 1 Minute . ( Not Acceptable )

Visual studio Enterprise has the last update, We have migrated the .NET Core To : 3.1.7

Computer Configuration : Azure Server, Premium SSD, 8 CPU , 2.7 GHZ

It is there any way to improve Build Time for Developemnt Only ? It is time consumming to change just a small code and then to wait 1 minute to see the result.

We have Tried a lot of settings as we saw on the internet. The Project code is :

<Project Sdk="Microsoft.NET.Sdk.Web">   
<PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <UserSecretsId>....</UserSecretsId>
    <ServerGarbageCollection>false</ServerGarbageCollection>
    <RazorCompileOnBuild>false</RazorCompileOnBuild>
    <RazorCompileOnPublish>true</RazorCompileOnPublish>
    <RunAnalyzersDuringBuild>false</RunAnalyzersDuringBuild>
    <BlazorLinkOnBuild Condition="'$(Configuration)'!='Release'">false</BlazorLinkOnBuild>
    <RunCodeAnalysis>false</RunCodeAnalysis>
    <UseRazorBuildServer>false</UseRazorBuildServer>
    <DisableImplicitAspNetCoreAnalyzers>true</DisableImplicitAspNetCoreAnalyzers>
</PropertyGroup>
<ItemGroup>
    <PackageReference Include="BlazorDateRangePicker" Version="2.9.0" />
    <PackageReference Include="Blazored.LocalStorage" Version="3.0.0" />
    <PackageReference Include="Blazored.SessionStorage" Version="1.0.12" />
    <PackageReference Include="BlazorInputFile" Version="0.2.0" />
    <PackageReference Include="ChartJs.Blazor" Version="1.1.0" />
    <PackageReference Include="EPPlus" Version="5.2.1" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.Google" Version="3.1.7" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="3.1.7" />
    <PackageReference Include="Microsoft.AspNetCore.Blazor.HttpClient" Version="3.2.0-preview3.20168.3" />
    <PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="3.1.7" />
    <PackageReference Include="Microsoft.AspNetCore.Http.Abstractions" Version="2.2.0" />
    <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="3.1.7" />
    <PackageReference Include="Microsoft.AspNetCore.Identity.UI" Version="3.1.7" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="3.1.7" />
    <PackageReference Include="Microsoft.AspNetCore.SignalR.Client" Version="3.1.7" />
    <PackageReference Include="Microsoft.AspNetCore.WebUtilities" Version="2.2.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.1.7" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.1.7"/>
    <PackageReference Include="Microsoft.AspNetCore.Authentication.Facebook" Version="3.1.7" />
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="3.1.7" />
    <PackageReference Include="Hangfire" Version="1.7.12" />
    <PackageReference Include="MailKit" Version="2.8.0" />
    <PackageReference Include="SixLabors.ImageSharp" Version="1.0.0" />
</ItemGroup>

Thank's

Log

1>Target Performance Summary:
1>        0 ms  CoreGenerateAssemblyInfo                   1 calls
1>        0 ms  PrepareResources                           1 calls
1>        0 ms  ResolvePackageDependenciesForBuild         1 calls
1>        0 ms  RazorComponentGenerateCore                 1 calls
1>        0 ms  RazorGenerate                              1 calls
1>        0 ms  PrepareProjectReferences                   1 calls
1>        0 ms  PrepareForRazorGenerate                    1 calls
1>        0 ms  ResolveSDKReferences                       1 calls
1>        0 ms  ExpandSDKReferences                        1 calls
1>        0 ms  _RemoveRazorDeclartionsFromCompile         1 calls
1>        0 ms  PrepareForRazorComponentGenerate           1 calls
1>        0 ms  BeforeCompile                              1 calls
1>        0 ms  Build                                      1 calls
1>        0 ms  GenerateFakes                              1 calls
1>        0 ms  AfterResolveReferences                     1 calls
1>        0 ms  ResolveReferences                          1 calls
1>        0 ms  AddSourceRevisionToInformationalVersion    1 calls
1>        0 ms  InitializeSourceControlInformation         1 calls
1>        0 ms  CopyAdditionalFiles                        1 calls
1>        0 ms  GenerateMSBuildEditorConfigFile            1 calls
1>        0 ms  GenerateMSBuildEditorConfigFileShouldRun   1 calls
1>        0 ms  SplitResourcesByCulture                    1 calls
1>        0 ms  CreateCustomManifestResourceNames          1 calls
1>        0 ms  PrepareResourceNames                       1 calls
1>        0 ms  BeforeResGen                               1 calls
1>        0 ms  GetTypeScriptOutputForPublishing           1 calls
1>        0 ms  RazorComponentGenerate                     1 calls
1>        0 ms  GenerateCompiledExpressionsTempFile        1 calls
1>        0 ms  IncludeTransitiveProjectReferences         1 calls
1>        0 ms  AddTransitiveFrameworkReferences           1 calls
1>        0 ms  _CheckForUnsupportedNETCoreVersion         1 calls
1>        0 ms  _CheckForUnsupportedCppNETCoreVersion      1 calls
1>        0 ms  AfterBuild                                 1 calls
1>        0 ms  CoreBuild                                  1 calls
1>        0 ms  PrepareForRun                              1 calls
1>        0 ms  ComputeDependencyFileCompilerOptions       1 calls
1>        0 ms  _ComputeUserRuntimeAssemblies              1 calls
1>        0 ms  _CopySourceItemsToOutputDirectory          1 calls
1>        0 ms  ResolveReferencedProjectsStaticWebAssets   1 calls
1>        0 ms  GetTargetPath                              1 calls
1>        0 ms  CollectPackageReferences                   1 calls
1>        0 ms  GetTargetPathWithTargetPlatformMoniker     1 calls
1>        0 ms  DesignTimeXamlMarkupCompilation            1 calls
1>        0 ms  Compile                                    1 calls
1>        0 ms  DisableAnalyzers                           1 calls
1>        0 ms  _GenerateRazorAssemblyInfo                 1 calls
1>        0 ms  _ComputePackageReferencePublish            1 calls
1>        0 ms  _DefaultMicrosoftNETPlatformLibrary        1 calls
1>        0 ms  BeforeResolveReferences                    1 calls
1>        0 ms  AfterCompile                               1 calls
1>        0 ms  ComputeRunAnalyzers                        1 calls
1>        0 ms  _BeforeVBCSCoreCompile                     1 calls
1>        0 ms  GetReferenceAssemblyPaths                  1 calls
1>        0 ms  GetFrameworkPaths                          1 calls
1>        0 ms  BuildOnlySettings                          1 calls
1>        0 ms  BeforeBuild                                1 calls
1>        0 ms  AfterResGen                                1 calls
1>        1 ms  RazorGenerateComponentDefinition           1 calls
1>        1 ms  SetWin32ManifestProperties                 1 calls
1>        1 ms  _DiscoverMvcApplicationParts               1 calls
1>        1 ms  GenerateTargetFrameworkMonikerAttribute    1 calls
1>        1 ms  CleanupEmptyRefsFolder                     1 calls
1>        1 ms  ValidationExtension                        1 calls
1>        1 ms  _CheckForCompileOutputs                    1 calls
1>        1 ms  ResGen                                     1 calls
1>        1 ms  _CollectTargetFrameworkForTelemetry        1 calls
1>        1 ms  _GetAppHostPaths                           1 calls
1>        1 ms  ResolveLockFileAnalyzers                   1 calls
1>        1 ms  _GenerateSatelliteAssemblyInputs           1 calls
1>        1 ms  _GetProjectJsonPath                        1 calls
1>        1 ms  ResolveStaticWebAssetsInputs               1 calls
1>        1 ms  ResolveRazorGenerateInputs                 1 calls
1>        1 ms  GenerateAssemblyInfo                       1 calls
1>        1 ms  GetAssemblyAttributes                      1 calls
1>        1 ms  _CheckForObsoleteDotNetCliToolReferences   1 calls
1>        1 ms  RazorGetAssemblyAttributes                 1 calls
1>        1 ms  _GetUserSecretsAssemblyAttribute           1 calls
1>        1 ms  _CoreGenerateRazorAssemblyInfo             1 calls
1>        1 ms  ResolveProjectReferences                   1 calls
1>        1 ms  BeforeGenerateFakesAssemblies              1 calls
1>        1 ms  _PopulateCommonStateForGetCopyToOutputDirectoryItems   1 calls
1>        1 ms  CreateSatelliteAssemblies                  1 calls
1>        1 ms  _PrepareForStaticWebAssets                 1 calls
1>        1 ms  CleanXsdCodeGen                            1 calls
1>        1 ms  _CheckForLanguageAndFeatureCombinationSupport   1 calls
1>        1 ms  ComputeIntermediateSatelliteAssemblies     1 calls
1>        1 ms  ResolveRazorComponentInputs                1 calls
1>        1 ms  _SetTargetFrameworkMonikerAttribute        1 calls
1>        1 ms  _SetEmbeddedWin32ManifestProperties        1 calls
1>        1 ms  CreateManifestResourceNames                1 calls
1>        1 ms  ExpressionBuildExtension                   1 calls
1>        1 ms  GetCopyToOutputDirectoryXamlAppDefs        1 calls
1>        1 ms  EnableIntermediateOutputPathMismatchWarning   1 calls
1>        1 ms  _SplitProjectReferencesByFileExistence     1 calls
1>        1 ms  _GenerateCompileInputs                     1 calls
1>        1 ms  _ComputeNETCoreBuildOutputFiles            1 calls
1>        2 ms  ApplyImplicitVersions                      1 calls
1>        2 ms  ValidateIdentityUIFrameworkVersion         1 calls
1>        2 ms  _CheckForUnsupportedAppHostUsage           1 calls
1>        2 ms  ResolveCodeAnalysisRuleSet                 1 calls
1>        2 ms  _GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences   1 calls
1>        2 ms  CheckFileSystemCaseSensitive               1 calls
1>        2 ms  _CheckForInvalidConfigurationAndPlatform   1 calls
1>        2 ms  GetTypeScriptCopyToOutputDirectoryItems    1 calls
1>        2 ms  AssignRazorGenerateTargetPaths             1 calls
1>        2 ms  CheckForImplicitPackageReferenceOverrides   1 calls
1>        3 ms  _CreateRazorAssemblyInfoInputsCacheFile    1 calls
1>        3 ms  GenerateBuildDependencyFile                1 calls
1>        3 ms  _GetProjectReferenceTargetFrameworkProperties   1 calls
1>        3 ms  _GenerateRuntimeConfigurationFilesInputCache   1 calls
1>        3 ms  PreXsdCodeGen                              1 calls
1>        3 ms  TypeScriptDeleteOutputFromOtherConfigs     1 calls
1>        3 ms  ResolveRazorConfiguration                  1 calls
1>        3 ms  _HashRazorGenerateInputs                   1 calls
1>        3 ms  _CopyOutOfDateSourceItemsToOutputDirectory   1 calls
1>        3 ms  CreateGeneratedAssemblyInfoInputsCacheFile   1 calls
1>        3 ms  _ResolveComponentRazorGenerateInputs       1 calls
1>        4 ms  _GetCopyToOutputDirectoryItemsFromThisProject   1 calls
1>        6 ms  ReportTypeScriptVersion                    1 calls
1>        6 ms  _GetRestoreProjectStyle                    1 calls
1>        7 ms  AssignRazorComponentTargetPaths            1 calls
1>        8 ms  GenerateBuildRuntimeConfigurationFiles     1 calls
1>        8 ms  UpdateAspNetToFrameworkReference           1 calls
1>        9 ms  GetAssemblyVersion                         1 calls
1>        9 ms  ResolveLockFileReferences                  1 calls
1>        9 ms  ResolveTargetingPackAssets                 1 calls
1>       10 ms  AssignProjectConfiguration                 1 calls
1>       10 ms  ResolveFrameworkReferences                 1 calls
1>       11 ms  GetCopyToOutputDirectoryItems              1 calls
1>       11 ms  ResolveLockFileCopyLocalFiles              1 calls
1>       11 ms  _ComputeReferenceAssemblies                1 calls
1>       12 ms  ProcessFrameworkReferences                 1 calls
1>       12 ms  _ResolveMvcAssemblyAttributes              1 calls
1>       13 ms  _HashRazorComponentInputs                  1 calls
1>       13 ms  CopyFilesToOutputDirectory                 1 calls
1>       18 ms  _CreateStaticWebAssetsInputsCacheFile      1 calls
1>       20 ms  ResolvePackageAssets                       1 calls
1>       21 ms  CoreResGen                                 1 calls
1>       23 ms  ResolveAssemblyReferenceRazorGenerateInputs   1 calls
1>       24 ms  PrepareForBuild                            1 calls
1>       27 ms  FindConfigFiles                            1 calls
1>       30 ms  _GenerateCompileDependencyCache            1 calls
1>       43 ms  IncrementalClean                           1 calls
1>       43 ms  _CleanGetCurrentAndPriorFileWrites         1 calls
1>       47 ms  CheckForDuplicateItems                     1 calls
1>       50 ms  _CopyFilesMarkedCopyLocal                  1 calls
1>       83 ms  _ResolveRazorGenerateOutputs               1 calls
1>       88 ms  _CopyReferenceOnlyAssembliesForBuild       1 calls
1>      101 ms  _HandlePackageFileConflicts                1 calls
1>      122 ms  AssignTargetPaths                          1 calls
1>      126 ms  FindReferenceAssembliesForReferences       1 calls
1>      136 ms  _ResolveRazorComponentOutputs              1 calls
1>      156 ms  _CreateAppHost                             1 calls
1>      307 ms  GenerateSatelliteAssemblies                2 calls
1>      879 ms  ResolveAssemblyReferences                  1 calls
1>     1447 ms  GenerateStaticWebAssetsManifest            1 calls
1>     1527 ms  ResolveTagHelperRazorGenerateInputs        1 calls
1>     2057 ms  RazorGenerateComponentDeclaration          1 calls
1>     2838 ms  ResolveCurrentProjectStaticWebAssetsInputs   1 calls
1>     6867 ms  RazorCoreGenerate                          1 calls
1>    19849 ms  RazorCompileComponentDeclaration           1 calls
1>    21464 ms  CoreCompile                                1 calls
1>
1>Task Performance Summary:
1>        0 ms  Delete                                     2 calls
1>        0 ms  FindInList                                 1 calls
1>        0 ms  CheckFileSystemCaseSensitive               1 calls
1>        0 ms  AssignCulture                              1 calls
1>        1 ms  ApplyImplicitVersions                      1 calls
1>        1 ms  CheckForImplicitPackageReferenceOverrides   1 calls
1>        1 ms  ResolveFrameworkReferences                 1 calls
1>        1 ms  MSBuild                                    1 calls
1>        1 ms  Telemetry                                  1 calls
1>        1 ms  ResolveCodeAnalysisRuleSet                 1 calls
1>        1 ms  CheckForDuplicateFrameworkReferences       1 calls
1>        1 ms  GetFrameworkPath                           1 calls
1>        1 ms  CreateCSharpManifestResourceName           1 calls
1>        3 ms  Touch                                      2 calls
1>        3 ms  JoinItems                                  1 calls
1>        3 ms  Message                                    4 calls
1>        3 ms  ReadLinesFromFile                          1 calls
1>        3 ms  ResolveAppHosts                            1 calls
1>        4 ms  GetRestoreProjectStyleTask                 1 calls
1>        4 ms  ProcessFrameworkReferences                 1 calls
1>        4 ms  FormatLocalizedString                      1 calls
1>        4 ms  GetPackageDirectory                        6 calls
1>        7 ms  ConvertToAbsolutePath                      1 calls
1>        7 ms  CheckIfPackageReferenceShouldBeFrameworkReference   2 calls
1>        7 ms  ResolveTargetingPackAssets                 1 calls
1>        8 ms  AssignProjectConfiguration                 1 calls
1>        9 ms  GetAssemblyVersion                         1 calls
1>       10 ms  WriteLinesToFile                           7 calls
1>       11 ms  CallTarget                                 3 calls
1>       14 ms  FindUnderPath                              5 calls
1>       15 ms  RemoveDuplicates                           2 calls
1>       18 ms  GenerateResource                           1 calls
1>       19 ms  ResolvePackageAssets                       1 calls
1>       24 ms  FindAppConfigFile                          1 calls
1>       27 ms  FindConfigFiles                            1 calls
1>       31 ms  Hash                                       7 calls
1>       37 ms  RemoveDir                                  1 calls
1>       45 ms  CheckForDuplicateItems                     3 calls
1>       46 ms  MakeDir                                   53 calls
1>       87 ms  ResolvePackageFileConflicts                1 calls
1>      129 ms  AssignTargetPath                          11 calls
1>      145 ms  Copy                                       6 calls
1>      155 ms  CreateAppHost                              1 calls
1>      303 ms  AL                                         2 calls
1>      873 ms  ResolveAssemblyReference                   1 calls
1>     1523 ms  RazorTagHelper                             1 calls
1>     8746 ms  RazorGenerate                              2 calls
1>    41309 ms  Csc                                        2 calls
1>
1>Build succeeded.
1>    0 Warning(s)
1>    0 Error(s)
1>

0 Answers
Related