For plugin development on an ASP.NET website (using MEF), I am trying to use ILMerge to merge all .NET assemblies in one assembly. I used a blog post from Scott Hanselman on ILMerge for a starter, but although I followed every step in his post, I ran into the following exception: Unresolved assembly reference not allowed: System.<WhatSoEver>. After a little investigation, I discovered that ILMerge by default does not understand how to merge projects using the .NET 4.0 framework.
Adding an ILMerge.exe.config file with the following piece of code in it solved my problems:
<configuration> <startup useLegacyV2RuntimeActivationPolicy="true"> <requiredRuntime safemode="true" imageVersion="v4.0.30319" version="v4.0.30319"/> </startup> </configuration>
This was able to successfully resolve my issue.