Tengo una solución en Visual Studio con 5 proyectos. Ellos son:Hacer referencia a conjuntos creados con ILMerge en proyectos de Visual Studio
Foo.Core
: Funcionalidad principal- : El código generado construido encima de núcleo
Foo.Web
: extensiones Web específicosFoo.Web.Mvc
: MVC-específica extensionesNewtonsoft.Json
: Biblioteca tercera parte
quiero usar ILMerge fusionar Foo.Core
, y Newtonsoft.Json
en un solo conjunto, llamado Foo
. Esa es la parte fácil.
El problema que me estoy encontrando es que Foo.Web
y Foo.Web.Mvc
ambos necesitan hacer referencia a los tres conjuntos fusionados.
Si hago referencia a los ensamblajes originales, tendrán referencias no válidas después de hacer ILMerge.
Si hago referencia al ensamblado ILMerged, debo hacer referencia a un ensamblaje de depuración y luego cambiarlo antes de empaquetar todo, lo que no parece ideal.
He intentado crear un proyecto llamado Foo
, que hace referencia a los 3 conjuntos fusionados y reemplaza su propia salida con el ensamblado ILmerged, pero parece que no funciona en absoluto.
¿Hay alguna manera confiable de hacerlo?
Sí, he intentado hacer eso, pero no pude obtener el efecto que estaba buscando. Parece que ILMerge va a necesitar ser reservado para un paso final antes de una publicación en lugar de una cosa de tiempo de compilación. –
Creo que puede lograr esto si sus proyectos se construyen en el orden correcto. ¿Ha configurado las dependencias de su proyecto para garantizar el orden de compilación? – JoeBilly