Я не уверен, что различие вы пытаетесь провести между слиянием собраний и положить все в одном файл. Что он делает, хотя и принимает набор .Net-сборок и создает единую сборку, которая содержит объединенное содержимое всех сборок.
Это не влияет на атрибут InternalsVisibleTo
для объединений сборок. Этот атрибут используется средой выполнения, чтобы разрешить доступ к internal
между сборками (что является незаконным). Поскольку все они теперь находятся в одной сборке, хотя они могут свободно обращаться к типам internal
друг друга без использования InternalsVisibleTo
. Короче говоря, если до слияния был действительный доступ internal
, он будет действителен после слияния.
Я не уверен, что вы имеете в виду под рефлексией и полностью квалифицированными именами сборок. Но, кажется, есть два случая, о которых я могу думать
- Схват типов в сборе квалифицированного имени во время выполнения. Это все равно будет работать нормально, но вы получите имя объединенной сборки вместо исходного имени сборки.
- Жесткое кодирование содержит квалифицированные имена типов в проект. Это вызовет проблемы, если вы используете имя сборки до слияния, поскольку этот тип больше не существует.