Skip to content

Instantly share code, notes, and snippets.

@pekspro
Created November 16, 2024 17:28
Show Gist options
  • Save pekspro/abe75754cb6b897d5f6e97993f0177d1 to your computer and use it in GitHub Desktop.
Save pekspro/abe75754cb6b897d5f6e97993f0177d1 to your computer and use it in GitHub Desktop.
Net8toNet9.ps1
# This script updates all .csproj-files from .NET 8 to .NET 9. It updates TargetFramework and
# all Microsoft- and System-packages.
# Put this script in the folder that contains the .csproj-files and then run it. All .csproj-files,
# including in subdirectories, will be converted.
$configFiles = Get-ChildItem -Path . -Recurse | Where-Object { $_.Name -match '\.csproj$|^Directory\.Packages\.props$' }
foreach ($file in $configFiles)
{
$content = (Get-Content $file.PSPath)
if(!($content -match "net8.0") -and $file.Name -ne 'Directory.Packages.props')
{
Write-Warning "Skipping $($file.FullName)"
continue;
}
Write-Output "Updating $($file.FullName)"
$content | `
Foreach-Object { $_ `
-replace "net8.0", "net9.0" `
-replace '(Include="Microsoft.AspNetCore.App.Ref"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-musl-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-musl-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.osx-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.osx-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.win-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.win-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.win-x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Certificate"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Facebook"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Google"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.JwtBearer"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.MicrosoftAccount"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Negotiate"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.OpenIdConnect"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Twitter"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.WsFederation"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Authorization"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.AzureAppServices.HostingStartup"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.AzureAppServices.SiteExtension"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.AzureAppServicesIntegration"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.Analyzers"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.Authorization"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.CustomElements"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.Forms"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.QuickGrid"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.QuickGrid.EntityFrameworkAdapter"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.Web"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebAssembly"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebAssembly.Authentication"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebAssembly.Server"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView.Maui"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView.Maui.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView.WindowsForms"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView.Wpf"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.ConcurrencyLimiter"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Connections.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Cryptography.Internal"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Cryptography.KeyDerivation"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection.EntityFrameworkCore"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection.Extensions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Grpc.JsonTranscoding"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.HeaderPropagation"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Hosting.WindowsServices"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Http.Connections.Client"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Http.Connections.Common"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Identity.UI"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.JsonPatch"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Metadata"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.MiddlewareAnalysis"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Mvc.Testing"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.OData"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.OpenApi"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.OutputCaching.StackExchangeRedis"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.Owin"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Client"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Client.Core"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Common"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Protocols.Json"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Protocols.MessagePack"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Specification.Tests"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.StackExchangeRedis"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SpaProxy"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.SpaServices.Extensions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.TestHost"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.AspNetCore.WebUtilities"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Authentication.WebAssembly.Msal"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Azure.Batch.FileStaging"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Bcl.AsyncInterfaces"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Bcl.Numerics"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Bcl.TimeProvider"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.CrmSdk.CoreAssemblies"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.2.56${3}' `
-replace '(Include="Microsoft.CrmSdk.Data"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.2.56${3}' `
-replace '(Include="Microsoft.CrmSdk.Deployment"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.2.34${3}' `
-replace '(Include="Microsoft.CrmSdk.Outlook"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.2.34${3}' `
-replace '(Include="Microsoft.CrmSdk.UII.CommonAssemblies"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0.10${3}' `
-replace '(Include="Microsoft.CrmSdk.UII.DesktopAssemblies"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0.10${3}' `
-replace '(Include="Microsoft.CrmSdk.USD.CoreAssemblies"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0.10${3}' `
-replace '(Include="Microsoft.CrmSdk.Workflow"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.2.56${3}' `
-replace '(Include="Microsoft.CrmSdk.XrmTooling.CrmConnector.PowerShell"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.2.11${3}' `
-replace '(Include="Microsoft.Data.Sqlite"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Data.Sqlite.Core"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.dotnet-openapi"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.DotNet.ApiCompat.Task"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.DotNet.ApiCompat.Tool"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.DotNet.Common.ItemTemplates"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.DotNet.ILCompiler"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.DotNet.Scaffolding.Shared"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.DotNet.Web.Client.ItemTemplates"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Analyzers"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Cosmos"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Design"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.InMemory"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Proxies"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Relational"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Relational.Specification.Tests"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Specification.Tests"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Sqlite"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Sqlite.Core"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.SqlServer"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.SqlServer.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.SqlServer.HierarchyId"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Tools"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.AmbientMetadata.Application"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.ApiDescription.Client"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.ApiDescription.Server"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Caching.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Caching.Memory"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Caching.SqlServer"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Caching.StackExchangeRedis"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Compliance.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Compliance.Redaction"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Binder"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.CommandLine"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.EnvironmentVariables"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.FileExtensions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Ini"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Json"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.KeyPerFile"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.UserSecrets"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Xml"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.DependencyInjection"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.DependencyInjection.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.DependencyInjection.AutoActivation"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.DependencyInjection.Specification.Tests"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.DependencyModel"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.ExceptionSummarization"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks.Common"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.ResourceMonitoring"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.Testing"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Features"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.FileProviders.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.FileProviders.Composite"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.FileProviders.Embedded"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.FileProviders.Physical"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.FileSystemGlobbing"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Hosting"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Hosting.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Hosting.Systemd"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Hosting.WindowsServices"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Http"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Http.Diagnostics"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Http.Polly"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Http.Resilience"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Identity.Core"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Identity.Stores"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Localization"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Localization.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Logging"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Logging.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Logging.AzureAppServices"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Logging.Configuration"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Logging.Console"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Logging.Debug"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Logging.EventLog"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Logging.EventSource"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Logging.TraceSource"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.ObjectPool"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Options"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Options.ConfigurationExtensions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Options.DataAnnotations"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Primitives"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Resilience"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.ServiceDiscovery"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.ServiceDiscovery.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.ServiceDiscovery.Yarp"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Telemetry"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Telemetry.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.TimeProvider.Testing"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Extensions.WebEncoders"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.ILVerification"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.JSInterop"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.JSInterop.WebAssembly"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Build.Tasks"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Build.Tasks.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Compatibility"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Compatibility.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Core"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Core.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Foldable"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Maps"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Xaml"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Controls.Xaml.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Core"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Core.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Essentials"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Essentials.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Graphics"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Skia"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Text.Markdig"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Win2D.WinUI.Desktop"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Win2D.WinUI.Desktop.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Maps"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Resizetizer"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Resizetizer.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Sdk"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Sdk.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Maui.Templates.net9"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Build.Containers"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.Net.Http.Headers"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.ILLink.Tasks"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Runtime.MonoAOTCompiler.Task"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Runtime.MonoAOTCompiler.Task.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Runtime.MonoTargets.Sdk"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Runtime.MonoTargets.Sdk.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Runtime.WebAssembly.Sdk"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Runtime.WebAssembly.Sdk.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Runtime.WebAssembly.Wasi.Sdk"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Sdk.IL"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NET.Sdk.WebAssembly.Pack"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.linux-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.linux-musl-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.linux-musl-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.linux-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.osx-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.osx-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.win-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.win-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-musl-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-musl-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-musl-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.osx-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.osx-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.win-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.win-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.win-x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Ref"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.browser-wasm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.ios-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.browser-wasm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.ios-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvos-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-bionic-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-musl-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-musl-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-musl-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm.Msi.x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm64.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x64.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x86.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x86.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.browser-wasm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.browser-wasm.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.ios-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.ios-arm64.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.ios-arm64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvos-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvos-arm64.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvos-arm64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvos-arm64.Msi.x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64.Msi.x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64.Msi.arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64.Msi.x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.wasi-wasm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.wasi-wasm.Msi.x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.osx-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.osx-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.win-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.win-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.win-x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.DotNetAppHost"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.ILAsm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.NETCore.ILDAsm"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.TemplateEngine.Abstractions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.TemplateEngine.Core"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.TemplateEngine.Core.Contracts"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.TemplateEngine.Edge"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.TemplateEngine.IDE"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.TemplateEngine.Orchestrator.RunnableProjects"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.TemplateEngine.Utils"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.TemplateSearch.Common"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.100${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.Core"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.Design"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.Templating"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.Utils"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGenerators.Mvc"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Win32.Registry.AccessControl"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Win32.SystemEvents"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.Windows.Compatibility"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.WindowsDesktop.App.Ref"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.WindowsDesktop.App.Runtime.win-arm64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.WindowsDesktop.App.Runtime.win-x64"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.WindowsDesktop.App.Runtime.win-x86"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="Microsoft.XmlSerializer.Generator"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.CodeDom"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Collections.Immutable"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.ComponentModel.Composition"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.ComponentModel.Composition.Registration"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Composition"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Composition.AttributedModel"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Composition.Convention"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Composition.Hosting"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Composition.Runtime"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Composition.TypedParts"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Configuration.ConfigurationManager"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Data.Odbc"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Data.OleDb"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Diagnostics.DiagnosticSource"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Diagnostics.EventLog"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Diagnostics.PerformanceCounter"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.DirectoryServices"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.DirectoryServices.AccountManagement"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.DirectoryServices.Protocols"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Drawing.Common"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Formats.Asn1"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Formats.Cbor"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Formats.Nrbf"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.IO.Hashing"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.IO.Packaging"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.IO.Pipelines"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.IO.Ports"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Management"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Memory.Data"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Net.Http.Json"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Net.Http.WinHttpHandler"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Net.ServerSentEvents"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Numerics.Tensors"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Reflection.Context"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Reflection.Metadata"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Reflection.MetadataLoadContext"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Resources.Extensions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Runtime.Caching"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Runtime.Serialization.Formatters"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Runtime.Serialization.Schema"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Security.Cryptography.Cose"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Security.Cryptography.Pkcs"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Security.Cryptography.ProtectedData"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Security.Cryptography.Xml"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Security.Permissions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.ServiceModel.Syndication"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.ServiceProcess.ServiceController"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Speech"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Text.Encoding.CodePages"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Text.Encodings.Web"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Text.Json"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Threading.AccessControl"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Threading.Channels"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Threading.RateLimiting"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Threading.Tasks.Dataflow"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
-replace '(Include="System.Windows.Extensions"\s+Version=")(8\.[0-9\.]*)(")', '${1}9.0.0${3}' `
} | Set-Content $file.PSPath -Encoding utf8BOM
}
# The large replace list could be generated with the following code. For some reason
# Find-Package could return different results each time so we makes several request as a
# workaround. This is a bit slow.
# $latestPackages = @()
# 1..10 | ForEach-Object { $latestPackages += Find-Package -Source "nuget.org" -Name Microsoft.* }
# 1..10 | ForEach-Object { $latestPackages += Find-Package -Source "nuget.org" -Name System.* }
# $latestPackages = $latestPackages | Where-Object { $_.Version -Match "^8.0" } | Sort-Object { $_.Name } -Unique
# $latestPackages | `
# ForEach-Object { Write-Output `
# " -replace '(Include=""$($_.Name)""\s+Version="")(8\.[0-9\.]*)("")', '`${1}$($_.Version)`${3}' ``"
# ` } | Set-Clipboard
# This script downgrades all .csproj-files from .NET 9 to .NET 8. It updates TargetFramework and
# all Microsoft- and System-packages.
# Put this script in the folder that contains the .csproj-files and then run it. All .csproj-files,
# including in subdirectories, will be converted.
$configFiles = Get-ChildItem -Path . -Recurse | Where-Object { $_.Name -match '\.csproj$|^Directory\.Packages\.props$' }
foreach ($file in $configFiles)
{
$content = (Get-Content $file.PSPath)
if(!($content -match "net9.0") -and $file.Name -ne 'Directory.Packages.props')
{
Write-Warning "Skipping $($file.FullName)"
continue;
}
Write-Output "Updating $($file.FullName)"
$content | `
Foreach-Object { $_ `
-replace "net9.0", "net8.0" `
-replace '(Include="Microsoft.AspNetCore.App.Ref"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-musl-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-musl-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.linux-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.osx-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.osx-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.win-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.win-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.App.Runtime.win-x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Certificate"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Facebook"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Google"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.JwtBearer"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.MicrosoftAccount"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Negotiate"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.OpenIdConnect"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.Twitter"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authentication.WsFederation"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Authorization"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.AzureAppServices.HostingStartup"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.AzureAppServices.SiteExtension"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.AzureAppServicesIntegration"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.Analyzers"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.Authorization"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.CustomElements"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.Forms"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.QuickGrid"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.QuickGrid.EntityFrameworkAdapter"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.Web"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebAssembly"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebAssembly.Authentication"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebAssembly.Server"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView.Maui"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView.Maui.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView.WindowsForms"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.AspNetCore.Components.WebView.Wpf"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.AspNetCore.ConcurrencyLimiter"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Connections.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Cryptography.Internal"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Cryptography.KeyDerivation"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection.EntityFrameworkCore"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection.Extensions"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Grpc.JsonTranscoding"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.HeaderPropagation"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Hosting.WindowsServices"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Http.Connections.Client"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Http.Connections.Common"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Identity.UI"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.JsonPatch"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Metadata"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.MiddlewareAnalysis"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Mvc.Testing"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.OData"\s+Version=")(9.0.0)(")', '${1}8.2.5${3}' `
-replace '(Include="Microsoft.AspNetCore.OpenApi"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.OutputCaching.StackExchangeRedis"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.Owin"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Client"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Client.Core"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Common"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Protocols.Json"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Protocols.MessagePack"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.Specification.Tests"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SignalR.StackExchangeRedis"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SpaProxy"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.SpaServices.Extensions"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.TestHost"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.AspNetCore.WebUtilities"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Authentication.WebAssembly.Msal"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Azure.Batch.FileStaging"\s+Version=")(9.0.0)(")', '${1}8.3.0${3}' `
-replace '(Include="Microsoft.Bcl.AsyncInterfaces"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Bcl.Numerics"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Bcl.TimeProvider"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.CrmSdk.CoreAssemblies"\s+Version=")(9.0.2.56)(")', '${1}8.2.0.2${3}' `
-replace '(Include="Microsoft.CrmSdk.Deployment"\s+Version=")(9.0.2.34)(")', '${1}8.2.0.2${3}' `
-replace '(Include="Microsoft.CrmSdk.Outlook"\s+Version=")(9.0.2.34)(")', '${1}8.2.0.2${3}' `
-replace '(Include="Microsoft.CrmSdk.UII.CommonAssemblies"\s+Version=")(9.0.0.10)(")', '${1}8.2.0.2${3}' `
-replace '(Include="Microsoft.CrmSdk.UII.DesktopAssemblies"\s+Version=")(9.0.0.10)(")', '${1}8.2.0.2${3}' `
-replace '(Include="Microsoft.CrmSdk.USD.CoreAssemblies"\s+Version=")(9.0.0.10)(")', '${1}8.2.0.2${3}' `
-replace '(Include="Microsoft.CrmSdk.Workflow"\s+Version=")(9.0.2.56)(")', '${1}8.2.0.2${3}' `
-replace '(Include="Microsoft.Data.Sqlite"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Data.Sqlite.Core"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.dotnet-openapi"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.DotNet.ApiCompat.Task"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.DotNet.ApiCompat.Tool"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.DotNet.Common.ItemTemplates"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.DotNet.ILCompiler"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.DotNet.Scaffolding.Shared"\s+Version=")(9.0.0)(")', '${1}8.0.7${3}' `
-replace '(Include="Microsoft.DotNet.Web.Client.ItemTemplates"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Analyzers"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Cosmos"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Design"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.InMemory"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Proxies"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Relational"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Relational.Specification.Tests"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Specification.Tests"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Sqlite"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Sqlite.Core"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.SqlServer"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.SqlServer.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.SqlServer.HierarchyId"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.EntityFrameworkCore.Tools"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.AmbientMetadata.Application"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.ApiDescription.Client"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.ApiDescription.Server"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Caching.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Caching.Memory"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Caching.SqlServer"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Caching.StackExchangeRedis"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Compliance.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Compliance.Redaction"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Binder"\s+Version=")(9.0.0)(")', '${1}8.0.2${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.CommandLine"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.EnvironmentVariables"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.FileExtensions"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Ini"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Json"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.KeyPerFile"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.UserSecrets"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Configuration.Xml"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.DependencyInjection"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.DependencyInjection.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.2${3}' `
-replace '(Include="Microsoft.Extensions.DependencyInjection.AutoActivation"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.DependencyInjection.Specification.Tests"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.DependencyModel"\s+Version=")(9.0.0)(")', '${1}8.0.2${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.ExceptionSummarization"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks.Common"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.ResourceMonitoring"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Diagnostics.Testing"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Features"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.FileProviders.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.FileProviders.Composite"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.FileProviders.Embedded"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.FileProviders.Physical"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.FileSystemGlobbing"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Hosting"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Hosting.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Hosting.Systemd"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Hosting.WindowsServices"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Http"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Http.Diagnostics"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Http.Polly"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Http.Resilience"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Identity.Core"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Identity.Stores"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Localization"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Localization.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Logging"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Logging.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.0.2${3}' `
-replace '(Include="Microsoft.Extensions.Logging.AzureAppServices"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Logging.Configuration"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Logging.Console"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Logging.Debug"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Logging.EventLog"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Logging.EventSource"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.Logging.TraceSource"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="Microsoft.Extensions.ObjectPool"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Extensions.Options"\s+Version=")(9.0.0)(")', '${1}8.0.2${3}' `
-replace '(Include="Microsoft.Extensions.Options.ConfigurationExtensions"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Options.DataAnnotations"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Primitives"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Extensions.Resilience"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.ServiceDiscovery"\s+Version=")(9.0.0)(")', '${1}8.2.2${3}' `
-replace '(Include="Microsoft.Extensions.ServiceDiscovery.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.2.2${3}' `
-replace '(Include="Microsoft.Extensions.ServiceDiscovery.Yarp"\s+Version=")(9.0.0)(")', '${1}8.2.2${3}' `
-replace '(Include="Microsoft.Extensions.Telemetry"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.Telemetry.Abstractions"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.TimeProvider.Testing"\s+Version=")(9.0.0)(")', '${1}8.10.0${3}' `
-replace '(Include="Microsoft.Extensions.WebEncoders"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.ILVerification"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.JSInterop"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.JSInterop.WebAssembly"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.Maui.Controls"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Controls.Build.Tasks"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Controls.Build.Tasks.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Controls.Compatibility"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Controls.Compatibility.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Controls.Core"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Controls.Core.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Controls.Foldable"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Controls.Maps"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Controls.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Controls.Xaml"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Controls.Xaml.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Core"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Core.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Essentials"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Essentials.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Graphics"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Skia"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Text.Markdig"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Win2D.WinUI.Desktop"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Graphics.Win2D.WinUI.Desktop.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Maps"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Resizetizer"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Resizetizer.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.Maui.Sdk"\s+Version=")(9.0.0)(")', '${1}8.0.93${3}' `
-replace '(Include="Microsoft.Maui.Sdk.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.83${3}' `
-replace '(Include="Microsoft.NET.Build.Containers"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.Net.Http.Headers"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NET.ILLink.Tasks"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NET.Runtime.MonoAOTCompiler.Task"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NET.Runtime.MonoAOTCompiler.Task.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NET.Runtime.MonoTargets.Sdk"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NET.Runtime.MonoTargets.Sdk.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NET.Runtime.WebAssembly.Sdk"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NET.Runtime.WebAssembly.Sdk.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NET.Runtime.WebAssembly.Wasi.Sdk"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NET.Sdk.IL"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.NET.Sdk.WebAssembly.Pack"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.linux-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.linux-musl-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.linux-musl-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.linux-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.osx-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.osx-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.win-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Crossgen2.win-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-musl-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-musl-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-musl-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.linux-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.osx-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.osx-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.win-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.win-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Host.win-x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Ref"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.browser-wasm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.ios-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.browser-wasm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.ios-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvos-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-bionic-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-musl-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-musl-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-musl-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.linux-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm.Msi.x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm64.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-arm64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x64.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x86.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.android-x86.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.browser-wasm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.browser-wasm.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.ios-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.ios-arm64.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.ios-arm64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvos-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvos-arm64.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvos-arm64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvos-arm64.Msi.x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64.Msi.x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64.Msi.arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64.Msi.x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.wasi-wasm"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.Mono.wasi-wasm.Msi.x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.osx-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.osx-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.win-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.win-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.App.Runtime.win-x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.DotNetAppHost"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.NETCore.ILAsm"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.NETCore.ILDAsm"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.TemplateEngine.Abstractions"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.TemplateEngine.Core"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.TemplateEngine.Core.Contracts"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.TemplateEngine.Edge"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.TemplateEngine.IDE"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.TemplateEngine.Orchestrator.RunnableProjects"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.TemplateEngine.Utils"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.TemplateSearch.Common"\s+Version=")(9.0.100)(")', '${1}8.0.404${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration"\s+Version=")(9.0.0)(")', '${1}8.0.7${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.Core"\s+Version=")(9.0.0)(")', '${1}8.0.7${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.Design"\s+Version=")(9.0.0)(")', '${1}8.0.7${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore"\s+Version=")(9.0.0)(")', '${1}8.0.7${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.Templating"\s+Version=")(9.0.0)(")', '${1}8.0.7${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGeneration.Utils"\s+Version=")(9.0.0)(")', '${1}8.0.7${3}' `
-replace '(Include="Microsoft.VisualStudio.Web.CodeGenerators.Mvc"\s+Version=")(9.0.0)(")', '${1}8.0.7${3}' `
-replace '(Include="Microsoft.Win32.Registry.AccessControl"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Win32.SystemEvents"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="Microsoft.Windows.Compatibility"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.WindowsDesktop.App.Ref"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.WindowsDesktop.App.Runtime.win-arm64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.WindowsDesktop.App.Runtime.win-x64"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.WindowsDesktop.App.Runtime.win-x86"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="Microsoft.XmlSerializer.Generator"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.CodeDom"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Collections.Immutable"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.ComponentModel.Composition"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.ComponentModel.Composition.Registration"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Composition"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Composition.AttributedModel"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Composition.Convention"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Composition.Hosting"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Composition.Runtime"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Composition.TypedParts"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Configuration.ConfigurationManager"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Data.Odbc"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Data.OleDb"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Diagnostics.DiagnosticSource"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Diagnostics.EventLog"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Diagnostics.PerformanceCounter"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.DirectoryServices"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.DirectoryServices.AccountManagement"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.DirectoryServices.Protocols"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Drawing.Common"\s+Version=")(9.0.0)(")', '${1}8.0.11${3}' `
-replace '(Include="System.Formats.Asn1"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Formats.Cbor"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.IO.Hashing"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.IO.Packaging"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.IO.Pipelines"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.IO.Ports"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Management"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Memory.Data"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Net.Http.Json"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Net.Http.WinHttpHandler"\s+Version=")(9.0.0)(")', '${1}8.0.2${3}' `
-replace '(Include="System.Numerics.Tensors"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Reflection.Context"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Reflection.Metadata"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Reflection.MetadataLoadContext"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Resources.Extensions"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Runtime.Caching"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Runtime.Serialization.Schema"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Security.Cryptography.Cose"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Security.Cryptography.Pkcs"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Security.Cryptography.ProtectedData"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Security.Cryptography.Xml"\s+Version=")(9.0.0)(")', '${1}8.0.2${3}' `
-replace '(Include="System.Security.Permissions"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.ServiceModel.Syndication"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.ServiceProcess.ServiceController"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Speech"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Text.Encoding.CodePages"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Text.Encodings.Web"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Text.Json"\s+Version=")(9.0.0)(")', '${1}8.0.5${3}' `
-replace '(Include="System.Threading.AccessControl"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Threading.Channels"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Threading.RateLimiting"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
-replace '(Include="System.Threading.Tasks.Dataflow"\s+Version=")(9.0.0)(")', '${1}8.0.1${3}' `
-replace '(Include="System.Windows.Extensions"\s+Version=")(9.0.0)(")', '${1}8.0.0${3}' `
} | Set-Content $file.PSPath -Encoding utf8BOM
}
# The large replace list could be generated with the following code. For some reason
# Find-Package could return different results each time so we makes several request as a
# workaround. This script will take a lot of time to run.
# $latestPackages = @()
# 1..10 | ForEach-Object { $latestPackages += Find-Package -Source "nuget.org" -Name Microsoft.* }
# 1..10 | ForEach-Object { $latestPackages += Find-Package -Source "nuget.org" -Name System.* }
# $latestPackages = $latestPackages | Where-Object { $_.Version -Match "^8.0" } | Sort-Object { $_.Name } -Unique
# $previousNetPackages = @()
# $latestPackages | `
# ForEach-Object { `
# $previousNetPackage = Find-Package -Source "nuget.org" -Name $_.Name -AllVersions -ErrorAction Ignore | Where-Object { $_.Version -Match "^8.*" } | Select-Object -First 1;
# if( $previousNetPackage -eq $null ) {
# Write-Output "$($_.Name) has no .NET8 version."
# }
# else {
# Write-Output "$($previousNetPackage.Name) $($previousNetPackage.Version)"
# $previousNetPackages += $previousNetPackage
# }
# ` }
# $previousNetPackageVersions = [ordered]@{}
# $previousNetPackages | Sort-Object { $_.Name } -Unique | ForEach-Object { $previousNetPackageVersions[$_.Name] =$_.Version }
# $latestPackages | `
# Where-Object { $previousNetPackageVersions.Contains($_.Name) } | `
# Sort-Object { $_.Name } -Unique | `
# ForEach-Object { `
# $previousNetPackage = $_;
# $net5version = $previousNetPackageVersions[$previousNetPackage.Name];
# Write-Output `
# " -replace '(Include=""$($previousNetPackage.Name)""\s+Version="")($($previousNetPackage.Version))("")', '`${1}$($net5version)`${3}' ``"
# ` } | Set-Clipboard
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment