Multifile assembly / Add reference
What is the difference between the Multifile assembly and Add reference? As far as I know you have to use command line argument to compile Multifile assembly. And Add reference works on Visual Studio Integrated Development Environment.
VulpesPosted Oct 3, 2013, 6:33 PM
Modules contain MSIL, metadata or resources and are compiled individually and then linked with the assembly linker, al.exe.
One of the modules is designated as the 'main module' and contains the assembly's manifest i.e. a list of the assembly's contents.
Multi-module assemblies are relatively rare in practice and their main use is to allow one to write modules in different languages, such as C# and VB.NET, and then link them together as a single assembly.
As you say, there is no support for them in VS and you have to use the command line to produce them.
In contrast when you add a reference to an assembly to another assembly, you are importing public type information from the former into the latter so it can use those types. This procedure is, of course, supported from both VS and the command line.
The essential difference between the two is therefore that a multi-module assembly is a single assembly where the individual modules work together whereas adding references involves two (or more) separate assemblies working together.
Posted Oct 3, 2013, 6:56 PM