Quellatalo.CombineCode.CSharp
0.3.0
dotnet add package Quellatalo.CombineCode.CSharp --version 0.3.0
NuGet\Install-Package Quellatalo.CombineCode.CSharp -Version 0.3.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Quellatalo.CombineCode.CSharp" Version="0.3.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Quellatalo.CombineCode.CSharp" Version="0.3.0" />
<PackageReference Include="Quellatalo.CombineCode.CSharp" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Quellatalo.CombineCode.CSharp --version 0.3.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Quellatalo.CombineCode.CSharp, 0.3.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Quellatalo.CombineCode.CSharp@0.3.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Quellatalo.CombineCode.CSharp&version=0.3.0
#tool nuget:?package=Quellatalo.CombineCode.CSharp&version=0.3.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Quellatalo.CombineCode.CSharp
A library to combine multiple written CSharp source files into one file.
Author: Quellatalo Nin
Overview
The project is still in early stage. It does not scan the local folders as much as IDEs/compilers do.
Please see the requirements to follow the expected code style.
Usage
const string TransformedFile = "Transformed.cs";
CSharpSourceInfo sourceInfo = CSharpSourceInfo.ReadFromFile("Path/To/File.cs");
// combine the targeted source file and its dependencies to one string.
string combinedCode = sourceInfo.CompileToOneSource();
// remove unused methods, xml comments
string trimmedCode = await CSharpSyntaxTree.ParseText(combinedCode)
.TrimUnusedCodeAsync()
.ConfigureAwait(false)
// write the combined code to file
File.WriteAllText(TransformedFile, trimmedCode);
// open the newly written file by using the OS's default behavior
FileUtils.OpenFile(TransformedFile);
Please visit the project repository to see some examples.
Requirements
It's just some standard styling rules:
- SA1402FileMayOnlyContainASingleType
- SA1649FileNameMustMatchTypeName
- IDE0130: Namespace does not match folder structure
Basically, namespaces should have matching folders, and types should have matching .cs files.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Microsoft.CodeAnalysis.CSharp.Workspaces (>= 5.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated | |
|---|---|---|---|
| 0.3.0 | 488 | 12/9/2025 | |
| 0.2.1 | 251 | 10/28/2025 | |
| 0.2.0 | 380 | 3/21/2025 | |
| 0.1.4 | 261 | 2/18/2025 | |
| 0.1.3 | 191 | 1/20/2025 | |
| 0.1.2 | 149 | 1/17/2025 | |
| 0.1.1 | 211 | 1/11/2025 | |
| 0.1.0 | 247 | 12/17/2024 | |
| 0.0.9 | 196 | 12/10/2024 | |
| 0.0.8 | 189 | 11/13/2024 | |
| 0.0.7 | 178 | 11/1/2024 | |
| 0.0.6 | 234 | 10/16/2024 | |
| 0.0.5 | 177 | 10/14/2024 | |
| 0.0.4 | 173 | 10/14/2024 | |
| 0.0.3 | 178 | 10/14/2024 | |
| 0.0.2 | 168 | 10/11/2024 | |
| 0.0.1 | 191 | 10/8/2024 |
**Changed**
- Now targets .NET10