Влияет ли модификатор доступа на отражение? - PullRequest
5 голосов
/ 18 сентября 2008

Я всегда верю, что они это сделали, но некоторые ответы здесь вызывают у меня сомнения ...

Могу ли я получить доступ к закрытым полям / свойствам / методам извне класса через отражение?

Ответы [ 4 ]

5 голосов
/ 18 сентября 2008

Да, вы можете получить доступ к приватным полям через отражение. Вот как многие ORM выполняют заполнение объекта без прохождения через ваши свойства (что вызовет бизнес-логику, которую вы, возможно, не планировали запустить при загрузке объекта).

Модификаторы доступа не являются формой безопасности!

3 голосов
/ 18 сентября 2008

Однако вам нужны дополнительные разрешения для доступа к закрытым / защищенным / внутренним полям / свойствам / методам извне класса через отражение.

2 голосов
/ 18 сентября 2008

Да, вы можете, вы просто указываете модификатор доступа в BindingFlags при обращении к ним.

0 голосов
/ 18 сентября 2008

Да, вы можете: но вы действительно должны спросить себя, почему вы собираетесь:)

На самом деле есть только один случай, когда это может иметь смысл, и это UnitTest.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...