C# 通过反射如何访问静态成员
现在我做了一个类集,每个类中有一个包含类,名称都相同,其中所有的字段都是静态公共的。我想通过反射机制把这些字段值取出来。该怎么办?我可以得到类型,但是不能从声明它的类中取...
现在我做了一个类集,每个类中有一个包含类,名称都相同,其中所有的字段都是静态公共的。我想通过反射机制把这些字段值取出来。该怎么办?
我可以得到类型,但是不能从声明它的类中取出值。有别的方法吗?
那位有好的办法? 展开
我可以得到类型,但是不能从声明它的类中取出值。有别的方法吗?
那位有好的办法? 展开
3个回答
展开全部
//动态链接库中PvsApiIfCtrl.Cls.Cls_Public类有一变量 private static string key="abcd";
//下面通过反射的技术修改和获取值
//设置key
public static void updatePalmKey(string key = "1234567890123456")
{
BindingFlags flag = BindingFlags.Static | BindingFlags.NonPublic;
FieldInfo f_key = typeof(PvsApiIfCtrl.Cls.Cls_Public).GetField("key", flag);
f_key.SetValue(new PvsApiIfCtrl.Cls.Cls_Public(), key);
}
/// <summary>
/// 获取key
/// </summary>
/// <returns></returns>
public static string getPalmKey()
{
BindingFlags flag = BindingFlags.Static | BindingFlags.NonPublic;
FieldInfo f_key = typeof(PvsApiIfCtrl.Cls.Cls_Public).GetField("key", flag);
object o = f_key.GetValue(new PvsApiIfCtrl.Cls.Cls_Public());
return o.ToString();
}
//下面通过反射的技术修改和获取值
//设置key
public static void updatePalmKey(string key = "1234567890123456")
{
BindingFlags flag = BindingFlags.Static | BindingFlags.NonPublic;
FieldInfo f_key = typeof(PvsApiIfCtrl.Cls.Cls_Public).GetField("key", flag);
f_key.SetValue(new PvsApiIfCtrl.Cls.Cls_Public(), key);
}
/// <summary>
/// 获取key
/// </summary>
/// <returns></returns>
public static string getPalmKey()
{
BindingFlags flag = BindingFlags.Static | BindingFlags.NonPublic;
FieldInfo f_key = typeof(PvsApiIfCtrl.Cls.Cls_Public).GetField("key", flag);
object o = f_key.GetValue(new PvsApiIfCtrl.Cls.Cls_Public());
return o.ToString();
}
Storm代理
2023-08-29 广告
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I...
点击进入详情页
本回答由Storm代理提供
展开全部
Assembly ab=Assembly.Load("XXX");
Type fieldType=ab.GetType("NameSpace.Class.YouNeedField")
Type fieldType=ab.GetType("NameSpace.Class.YouNeedField")
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询