views:

221

answers:

5

I always believe they did, but seeing some answers here make me doubt...

Can I access private fields/properties/methods from outside a class through reflection?

+1  A: 

Yes you can, you just specify the access modifier in the BindingFlags when you access them.

Abe Heidebrecht
+2  A: 

You do, however, need extra permissions for accessing private/protected/internal fields/properties/methods from outside a class through reflection.

Tobi
Yes, the application needs full trust (or at least ReflectionPermission).
Lucas
A: 

Yes you can: but you really should questions yourself why you're going to :)

There is actually only one case, where it can make sense and this is a UnitTest.

MADMap
A: 

For example: post

Nescio
+3  A: 

Yes you can access private fields via reflection. This is how a lot of ORMs go about populating an object without going through your properties (which will invoke business logic you might not have intended to be run on an object load).

Access modifiers are not a form of security!

Ryan Rinaldi
The application probably needs full trust (or at least ReflectionPermission), though.
Lucas