Skip to content

Commit 4887f9d

Browse files
authored
⬆️ Upgrade project to .NET 10 and update package references (#215)
This pull request updates the project to target .NET 10 and upgrades several core dependencies to their latest major versions. It also removes redundant package references and disables a specific code style warning to allow for intentional use of backing fields. These changes ensure compatibility with .NET 10 and streamline project configuration. **Framework and SDK Upgrades** * Updated `TargetFramework` to `net10.0` in `Directory.Build.props` and removed old version references from `ServiceDefaults.csproj` and `MigrationService.csproj`. [[1]](diffhunk://#diff-9da24614831c308827a1ae533ffea392c97638c261dd42bd0f5226baa136d16eL3-R3) [[2]](diffhunk://#diff-180bff7266c0295e7730620bd28791098b2615e3cf0073b95da82a43d94f674aL3) [[3]](diffhunk://#diff-4d0c133c7fbb6e9901bce3a4ee288a9c48c1e78edb738e9181801866895662e2L1-L4) * Updated .NET SDK version in `global.json` to `10.0.100`. **Dependency Updates** * Upgraded several key NuGet package versions to their 10.x releases in `Directory.Packages.props`, including `Microsoft.AspNetCore.OpenApi`, `Microsoft.EntityFrameworkCore.Design`, `Microsoft.Extensions.Hosting`, `Microsoft.EntityFrameworkCore.Relational`, `Microsoft.Extensions.Http.Resilience`, and `Microsoft.AspNetCore.Mvc.Testing`. [[1]](diffhunk://#diff-5baf5f9e448ad54ab25a091adee0da05d4d228481c9200518fcb1b53a65d4156L10-R16) [[2]](diffhunk://#diff-5baf5f9e448ad54ab25a091adee0da05d4d228481c9200518fcb1b53a65d4156L29-R28) [[3]](diffhunk://#diff-5baf5f9e448ad54ab25a091adee0da05d4d228481c9200518fcb1b53a65d4156L51-R50) **Code Style and Build Configuration** * Disabled the IDE0032 warning to allow intentional use of backing fields instead of auto-properties in `Directory.Build.props`. **Project Reference Cleanup** * Removed unnecessary references to `Microsoft.Extensions.DependencyInjection.Abstractions` from `WebApi.csproj` and `WebApi.IntegrationTests.csproj`. [[1]](diffhunk://#diff-14bca82630ad8e734f2571972ff5ea67cacb08c41f2482aa320f2a955fc9993fL16) [[2]](diffhunk://#diff-8cfa8bb069cc0e51dd5e26fbb397d0da70494f7d925518d363250a2f242bf38aL14)
1 parent 30e6d27 commit 4887f9d

File tree

8 files changed

+19
-21
lines changed

8 files changed

+19
-21
lines changed

Directory.Build.props

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<Project>
22
<PropertyGroup>
3-
<TargetFramework>net9.0</TargetFramework>
3+
<TargetFramework>net10.0</TargetFramework>
44
<ImplicitUsings>enable</ImplicitUsings>
55
<Nullable>enable</Nullable>
66
<TreatWarningsAsErrors Condition="'$(Configuration)' == 'Release'">true</TreatWarningsAsErrors>
@@ -16,5 +16,8 @@
1616

1717
<!-- Disable "must have curly braces for if/else" -->
1818
<NoWarn>$(NoWarn);IDE0011</NoWarn>
19+
20+
<!-- Disable "use auto property" - intentionally using backing fields for validation -->
21+
<NoWarn>$(NoWarn);IDE0032</NoWarn>
1922
</PropertyGroup>
2023
</Project>

Directory.Packages.props

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,16 @@
66
<PackageVersion Include="Aspire.Hosting.Azure.ApplicationInsights" Version="9.5.1" />
77
<PackageVersion Include="Aspire.Hosting.Azure.AppService" Version="9.5.1-preview.1.25502.11" />
88
<PackageVersion Include="Aspire.Hosting.Azure.Sql" Version="9.5.1" />
9+
<PackageVersion Include="EntityFrameworkCore.Exceptions.SqlServer" Version="8.1.3" />
910
<PackageVersion Include="FastEndpoints.Swagger" Version="7.0.1" />
10-
<PackageVersion Include="Microsoft.AspNetCore.OpenApi" Version="9.0.10" />
11-
<PackageVersion Include="Microsoft.EntityFrameworkCore.Design" Version="9.0.10">
11+
<PackageVersion Include="Microsoft.AspNetCore.OpenApi" Version="10.0.0" />
12+
<PackageVersion Include="Microsoft.EntityFrameworkCore.Design" Version="10.0.0">
1213
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
1314
<PrivateAssets>all</PrivateAssets>
1415
</PackageVersion>
15-
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="9.0.4" />
16-
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.10" />
17-
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational" Version="9.0.10" />
18-
<PackageVersion Include="EntityFrameworkCore.Exceptions.SqlServer" Version="8.1.3" />
19-
<PackageVersion Include="Aspire.Microsoft.EntityFrameworkCore.SqlServer" Version="9.5.1" />
16+
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="10.0.0" />
17+
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational" Version="10.0.0" />
18+
<PackageVersion Include="Aspire.Microsoft.EntityFrameworkCore.SqlServer" Version="13.0.2" />
2019
<PackageVersion Include="Scalar.AspNetCore" Version="2.4.7" />
2120
<PackageVersion Include="FluentValidation.DependencyInjectionExtensions" Version="12.0.0" />
2221
<PackageVersion Include="ErrorOr" Version="2.0.1" />
@@ -26,8 +25,8 @@
2625
<PackageVersion Include="FastEndpoints" Version="7.0.1" />
2726
</ItemGroup>
2827
<ItemGroup Condition="$(IsAspireSharedProject) == 'true'">
29-
<PackageVersion Include="Microsoft.Extensions.Http.Resilience" Version="9.10.0" />
30-
<PackageVersion Include="Microsoft.Extensions.ServiceDiscovery" Version="9.5.1" />
28+
<PackageVersion Include="Microsoft.Extensions.Http.Resilience" Version="10.0.0" />
29+
<PackageVersion Include="Microsoft.Extensions.ServiceDiscovery" Version="10.0.0" />
3130
<PackageVersion Include="OpenTelemetry.Exporter.OpenTelemetryProtocol" Version="1.13.1" />
3231
<PackageVersion Include="OpenTelemetry.Extensions.Hosting" Version="1.13.1" />
3332
<PackageVersion Include="OpenTelemetry.Instrumentation.AspNetCore" Version="1.13.0" />
@@ -39,16 +38,16 @@
3938
<PackageVersion Include="Aspire.Hosting.SqlServer" Version="9.5.1" />
4039
</ItemGroup>
4140
<ItemGroup Condition="$(IsTestProject) == 'true'">
42-
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.0.0" />
43-
<PackageVersion Include="xunit.v3" Version="3.1.0" />
41+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
42+
<PackageVersion Include="xunit.v3" Version="3.2.1" />
4443
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.5">
4544
<PrivateAssets>all</PrivateAssets>
4645
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
4746
</PackageVersion>
4847
<PackageVersion Include="NSubstitute" Version="5.3.0" />
4948
<PackageVersion Include="NetArchTest.Rules" Version="1.3.2" />
5049
<PackageVersion Include="AwesomeAssertions" Version="9.2.1" />
51-
<PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="9.0.10" />
50+
<PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="10.0.0" />
5251
<PackageVersion Include="Respawn" Version="6.2.1" />
5352
<PackageVersion Include="Testcontainers.MsSql" Version="4.8.1" />
5453
<PackageVersion Include="Polly" Version="8.6.4" />

global.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"sdk": {
3-
"version": "9.0.300",
3+
"version": "10.0.100",
44
"rollForward": "latestMinor",
55
"allowPrerelease": false
66
}

src/ServiceDefaults/ServiceDefaults.csproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFramework>net9.0</TargetFramework>
43
<IsAspireSharedProject>true</IsAspireSharedProject>
54
</PropertyGroup>
65

src/WebApi/Common/Persistence/DependencyInjection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using EntityFramework.Exceptions.SqlServer;
1+
using EntityFramework.Exceptions.SqlServer;
22
using SSW.VerticalSliceArchitecture.Common.Persistence.Interceptors;
33

44
namespace SSW.VerticalSliceArchitecture.Common.Persistence;

src/WebApi/WebApi.csproj

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,15 @@
66
</PropertyGroup>
77

88
<ItemGroup>
9+
<PackageReference Include="EntityFrameworkCore.Exceptions.SqlServer" />
910
<PackageReference Include="FastEndpoints.Swagger" />
1011
<PackageReference Include="FluentValidation.DependencyInjectionExtensions" />
1112
<PackageReference Include="Microsoft.AspNetCore.OpenApi" />
1213
<PackageReference Include="Microsoft.EntityFrameworkCore.Design">
1314
<PrivateAssets>all</PrivateAssets>
1415
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
1516
</PackageReference>
16-
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" />
1717
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" />
18-
<PackageReference Include="EntityFrameworkCore.Exceptions.SqlServer" />
1918
<PackageReference Include="ErrorOr" />
2019
<PackageReference Include="Vogen" />
2120
<PackageReference Include="Ardalis.Specification.EntityFrameworkCore" />

tests/WebApi.IntegrationTests/WebApi.IntegrationTests.csproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
<PackageReference Include="Bogus" />
1212
<PackageReference Include="FastEndpoints" />
1313
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" />
14-
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" />
1514
<PackageReference Include="NSubstitute" />
1615
<PackageReference Include="Respawn" />
1716
<PackageReference Include="Testcontainers.MsSql" />

tools/MigrationService/MigrationService.csproj

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
33
<OutputType>Exe</OutputType>
4-
<TargetFramework>net9.0</TargetFramework>
54
</PropertyGroup>
65

76
<ItemGroup>

0 commit comments

Comments
 (0)