Являются ли включаемые файлы вашим собственным исходным кодом или сторонними сборочными библиотеками?
Если они являются вашими собственными источниками, то вы можете легко использовать условную компиляцию для удаления «смоделированного» кода из вашей сборки выпуска, точно так же, как вы это делали в своем примере (просто замените «include» на «using»). Это обычная практика с отладочными классами, например.
Если вы не «управляете» исходным кодом для включений, вы все равно можете добавить ссылку на проект, но если вы условно скомпилируете весь код, который использует сборку, ваше приложение никогда не будет пытаться получить доступ к сборка, поэтому он не должен присутствовать во время выполнения кода.
(Другая возможность, которая кажется менее полезной для вас, - это написание «фиктивной» версии ссылочной сборки, которую вы отправляете вместо «настоящей», или прокси, который вызывает реальную стороннюю dll в симулированных сборках Только если он предоставляет открытые классы и методы, которые вы вызываете, вы можете отправить пустышку вместо смоделированной сборки вашим клиентам)