I'm currently migrating a project from .NET Framework 4.8 to .NET 6. In the build pipeline the following tools are in use:
- ILRepack or ILMerge: for merging multiple XML files into one XML
- Costura.Fody: for merging multiple DLLs into a single DLL
- SmartAssembly or .NET Reactor: for obfuscation purposes and merging multiple DLLs into a single DLL
All these tools work great for .NET Framework assemblies but are incompatible with .NET 6.
I'm aware of the single-file deployment technique in .NET 6 but the publishment of single files only work for executables and not for libraries. I tested this by trying to publish a .NET 6 library as a single file (see image above).
I can't find a lot of other techniques or tools for .NET 6 while searching the Internet.
What tools or techniques for merging multiple DLLs into a single file are there for .NET 6?