У меня есть решение в Visual Studio с 5 проектами. К ним относятся:Ссылка на сборки, созданные с помощью ILMerge в проектах Visual Studio
Foo.Core
: Базовая функциональность- : Сгенерированный код построен на вершине ядра
Foo.Web
: Веб-специфические расширенияFoo.Web.Mvc
: MVC конкретные расширенияNewtonsoft.Json
: третья библиотека партия
Я хочу использовать ILMerge слиться Foo.Core
, и Newtonsoft.Json
в одну сборку, называется Foo
. Это легкая часть.
Проблема, с которой я столкнулся, заключается в том, что Foo.Web
и Foo.Web.Mvc
обе должны ссылаться на все три объединенные сборки.
Если я ссылаюсь на оригинальные сборки, у них будут неправильные ссылки после выполнения ILMerge.
Если я ссылаюсь на сборку с ILMerged, я должен ссылаться на сборку отладки, а затем менять ее, прежде чем упаковать все, что не кажется идеальным.
Я пробовал создать проект под названием Foo
, который ссылается на 3 объединенные сборки и заменяет свой собственный результат сборкой ILmerged, но это, похоже, не работает вообще.
Есть ли надежный способ сделать это?
Да, я пробовал это сделать, но не смог получить эффект, который я искал. Похоже, что ILMerge нужно зарезервировать для последнего шага перед выпуском, а не для компиляции. –
Я думаю, вы можете достичь этого, если ваши проекты строятся в правильном порядке. Установили ли вы зависимости проекта, чтобы обеспечить порядок сборки? – JoeBilly