Skip to content

Commit

Permalink
Add a source generator to generate versioned DTOs (#1466)
Browse files Browse the repository at this point in the history
  • Loading branch information
gunndabad authored Aug 19, 2024
1 parent 699d8ba commit ced2453
Show file tree
Hide file tree
Showing 16 changed files with 607 additions and 117 deletions.
3 changes: 2 additions & 1 deletion TeachingRecordSystem/Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,13 @@
<ImplicitUsings>enable</ImplicitUsings>

<IsTestProject Condition="'$(IsTestProject)' == '' and $(MSBuildProjectName.EndsWith('Tests'))">true</IsTestProject>
<IsSourceGeneratorProject Condition="'$(IsSourceGeneratorProject)' == '' and $(MSBuildProjectName.EndsWith('Generator'))">true</IsSourceGeneratorProject>

<UserSecretsId>TeachingRecordSystem</UserSecretsId>
<UserSecretsId Condition="'$(IsTestProject)' == 'true'">TeachingRecordSystemTests</UserSecretsId>
</PropertyGroup>

<ItemGroup>
<ItemGroup Condition="'$(IsSourceGeneratorProject)' != 'true'">
<Using Include="Microsoft.EntityFrameworkCore" />
<Using Include="TeachingRecordSystem.Core" />
<Using Include="TeachingRecordSystem.Core.CoreConstants" Static="true" />
Expand Down
17 changes: 17 additions & 0 deletions TeachingRecordSystem/TeachingRecordSystem.sln
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TeachingRecordSystem.UiTest
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TeachingRecordSystem.AuthorizeAccess.EndToEndTests", "tests\TeachingRecordSystem.AuthorizeAccess.EndToEndTests\TeachingRecordSystem.AuthorizeAccess.EndToEndTests.csproj", "{2D7946CB-44D2-431D-A9E1-A4472FACC1DC}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "gen", "gen", "{5E273A79-2EA3-46CD-9049-769F880868FE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TeachingRecordSystem.Api.Generator", "gen\TeachingRecordSystem.Api.Generator\TeachingRecordSystem.Api.Generator.csproj", "{7EA8C0A7-C149-4928-8E37-55D44976D765}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -277,6 +281,18 @@ Global
{2D7946CB-44D2-431D-A9E1-A4472FACC1DC}.Release|x64.Build.0 = Release|Any CPU
{2D7946CB-44D2-431D-A9E1-A4472FACC1DC}.Release|x86.ActiveCfg = Release|Any CPU
{2D7946CB-44D2-431D-A9E1-A4472FACC1DC}.Release|x86.Build.0 = Release|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Debug|x64.ActiveCfg = Debug|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Debug|x64.Build.0 = Debug|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Debug|x86.ActiveCfg = Debug|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Debug|x86.Build.0 = Debug|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Release|Any CPU.Build.0 = Release|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Release|x64.ActiveCfg = Release|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Release|x64.Build.0 = Release|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Release|x86.ActiveCfg = Release|Any CPU
{7EA8C0A7-C149-4928-8E37-55D44976D765}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand All @@ -300,6 +316,7 @@ Global
{08E99A19-AD1F-4F95-BF13-31248D486799} = {91DCFC76-6636-4AC1-B81C-7F8AE1F22116}
{B22223A8-9CB0-4B60-B516-18FD684CF01D} = {91DCFC76-6636-4AC1-B81C-7F8AE1F22116}
{2D7946CB-44D2-431D-A9E1-A4472FACC1DC} = {91DCFC76-6636-4AC1-B81C-7F8AE1F22116}
{7EA8C0A7-C149-4928-8E37-55D44976D765} = {5E273A79-2EA3-46CD-9049-769F880868FE}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {61D239F9-888B-4D01-84BC-9276C92383EA}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<ManagePackageVersionsCentrally>false</ManagePackageVersionsCentrally>
<EnforceExtendedAnalyzerRules>true</EnforceExtendedAnalyzerRules>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.9.2" PrivateAssets="all" />
<PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="3.3.4" PrivateAssets="all" />
</ItemGroup>

</Project>
Loading

0 comments on commit ced2453

Please sign in to comment.