C#反射使用时注意BindingFlags的用法

 c#反射查找方法时,默认只能查到public方法。如果想要查找private方法,需要设定BindingFlags.

    即:

    BindingFlags.Public|BindingFlags.Instance 默认查找public、instance内容。

    BindingFlags.NonPublic|BindingFlags.Instance 查找nonpublic、instance内容

    另外,BindingFlags.Instance和BindingFlags.Static二者必须有一项或者都有。如果你的类是instance,就选instance,反之选static。如果两者都不选,是找不到任何方法的。

    当然,稳妥的办法是全写。即:

    BindingFlags.Public|BindingFlags.NonPublic|BindingFlags.Instance|BindingFlags.Static.

posted @ 2019-07-03 15:19  桬椤  阅读(1412)  评论(0)    收藏  举报