Я хотел бы запустить стороннюю сборку .NET на моем API. Я хочу позволить ему вызывать свои собственные методы и объекты по своему усмотрению, но запретить ему доступ ко всему, что мой API явно не предоставляет. В частности, если мой API передает объект стороннему коду как IMyObject
, я не хочу, чтобы они использовали отражение или какой-либо метод для повышения этого объекта, скажем, до MyObject
, реализующего интерфейс.
Есть ли способ запретить использование отражения в этой сторонней сборке? У меня есть полный контроль над всем, поэтому мне не нужно мешать людям декомпилировать мою сборку, просто злоупотребляя ею во время выполнения.