Skip to content

Commit a19251b

Browse files
committed
Added a copy of InitModules project and adapted it as directory viewer, to compare performance of two approaches
1 parent 4af346f commit a19251b

File tree

2 files changed

+69
-3
lines changed

2 files changed

+69
-3
lines changed

scripts/0DirectoryViewer.csproj

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
<CopyBuildOutputToOutputDirectory>false</CopyBuildOutputToOutputDirectory>
1313
<IsPackable>false</IsPackable>
1414

15-
<!-- Suppress No source files specified -->
15+
<!-- Suppress "No source files specified": -->
1616
<NoWarn>$(NoWarn);CS2008</NoWarn>
1717

1818
</PropertyGroup>
@@ -45,7 +45,7 @@
4545
</ItemGroup>
4646

4747

48-
<!-- Override all build-related targets so they do nothing -->
48+
<!-- Override all build-related targets so they do nothing:
4949
<Target Name="CoreCompile" />
5050
<Target Name="PrepareForBuild" />
5151
<Target Name="Compile" />
@@ -54,10 +54,12 @@
5454
<Target Name="ResolveReferences" />
5555
<Target Name="GenerateTargetFrameworkMonikerAttribute" />
5656
<Target Name="GenerateAssemblyInfo" />
57-
<!-- Nullify additional (restore-related) targets -->
57+
58+
Nullify additional (restore-related) targets:
5859
<Target Name="Restore" />
5960
<Target Name="CheckForUnsupportedNETCoreVersion" />
6061
<Target Name="CheckForProjectVersionCompatibility" />
62+
-->
6163

6264

6365
</Project>
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
<!-- Utility project; Initializes dependencies for the EventAggregator and EventAggregatorTests projects:
3+
* Clones / updates source repositories of dependencies side by side
4+
See: https://github.com/ajgorhoe/IGLib.modules.IGLibEventAggregator/blob/main/src/0InitModules/InitializationProjects.md -->
5+
<PropertyGroup>
6+
<TargetFramework>netstandard2.0</TargetFramework>
7+
<OutputType>Library</OutputType>
8+
9+
<!-- Prevent generation of assembly info, build output and packing: -->
10+
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
11+
<CopyBuildOutputToOutputDirectory>false</CopyBuildOutputToOutputDirectory>
12+
<IncludeBuildOutput>false</IncludeBuildOutput>
13+
<IsPackable>false</IsPackable>
14+
15+
<!-- Ensure that the post-build event is run even if the project is up-to-date and does not need building:
16+
<RunPostBuildEvent>OnOutputUpdated</RunPostBuildEvent>
17+
-->
18+
</PropertyGroup>
19+
20+
<!-- Remove all C# compilation to avoid invoking the compiler (csc) at all;
21+
<ItemGroup>
22+
<Compile Remove="**\*.cs" />
23+
<InitScripts Include="Scripts\*.ps1" />
24+
</ItemGroup>
25+
-->
26+
27+
<!-- Copy a file to the output directory, in order to have timestamped output:
28+
<ItemGroup>
29+
<None Update="0readme_InitModulesEventAggregator.txt">
30+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
31+
</None>
32+
</ItemGroup>
33+
-->
34+
35+
36+
<!-- Remove all real Compile items -->
37+
<ItemGroup>
38+
<Compile Remove="**\*.cs" />
39+
</ItemGroup>
40+
41+
42+
<!-- Do not display directories and files form project root directory: -->
43+
<ItemGroup>
44+
<None Remove="**\*.*" >
45+
</None>
46+
</ItemGroup>
47+
48+
<!-- Mirror real direectories: -->
49+
50+
<!-- /scripts, mapped to scripts/, which is also the project's root directory: -->
51+
<ItemGroup>
52+
<None Include="..\scripts\**\*.*">
53+
<Link>scripts\%(RecursiveDir)%(Filename)%(Extension)</Link>
54+
</None>
55+
<!--
56+
<None Remove="..\scripts\bin\**\*.*" />
57+
<None Remove="..\scripts\obj\**\*.*" />
58+
-->
59+
<None Remove="..\scripts\.vs\**\*.*" />
60+
</ItemGroup>
61+
62+
63+
64+
</Project>

0 commit comments

Comments
 (0)