Компьютер, на котором работает программа, должен предоставить программе ReflectionPermission.
Это не будет проблемой, если пользователь запускает вашу программу из локальной файловой системы. Это может быть проблемой, если пользователь запускает вашу программу из сетевого ресурса, интрасети, Интернета и т. Д., В зависимости от политик компьютера, на котором выполняется программа. Политики могут также учитывать такие факторы, как исходный URL-адрес или общий ресурс сети, подписана ли программа и т. Д. Например, если это приложение для интрасети, сетевые администраторы могут разрешить высокое доверие к программам, которые происходят из http://our_site/approved_apps/ и подписаны, но не для программ, которые происходят из других частей интрасети или не подписаны.
В любом случае, это вне вашего контроля: ваша сборка может заявить, что ей требуется ReflectionPermission, но предоставлено ли это, зависит от конфигурации целевой системы. (Но, опять же, если ваша программа запускается из локальной файловой системы, это не должно быть проблемой, потому что она будет работать с полным доверием, если кто-то не действительно заблокировал машину.)