MethodAccessException with Reflection on Windows Phone 7

醉酒当歌 提交于 2019-12-25 04:14:17

问题


While working with reflection, I recently got to the point where I wanted to access an object (in fact, a static instance of an object).

The object itself is defined by an internal class, therefore there is no other way to access it. Instead of directly getting a parametrized constructor, I can access a static instance via the Instance property. With the help of reflection, I am also able to get this property and set it to a PropertyInfo instance - it is detected correctly.

However, I am not able to get the value of the property via GetValue (since it is called via get_Instance() in the internal class itself) and set it to an object because I am getting a MethodAccessException.

The internal class is marked with the SecuritySafeCritical, but I do believe that shouldn't be the problem.

Any ideas on why am I getting this exception?


回答1:


Have a look at MethodAccessException.

It says

This exception is thrown in situations such as the following:

*      A private, protected, or internal method that would not be accessible from normal compiled code is accessed from partially trusted code by using reflection.
*      A security-critical method is accessed from transparent code.
*      The access level of a method in a class library has changed, and one or more assemblies that reference the library have not been recompiled.

Check if the assembly is properly compiled and your application has proper privileges.



来源:https://stackoverflow.com/questions/4331891/methodaccessexception-with-reflection-on-windows-phone-7

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!