C# 通过反射如何访问静态成员

现在我做了一个类集,每个类中有一个包含类,名称都相同,其中所有的字段都是静态公共的。我想通过反射机制把这些字段值取出来。该怎么办?我可以得到类型,但是不能从声明它的类中取... 现在我做了一个类集,每个类中有一个包含类,名称都相同,其中所有的字段都是静态公共的。我想通过反射机制把这些字段值取出来。该怎么办?
我可以得到类型,但是不能从声明它的类中取出值。有别的方法吗?
那位有好的办法?
展开
 我来答
xiangjuan314
2016-01-05 · TA获得超过3.3万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:2916万
展开全部
//动态链接库中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();
}
Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
jdzfjfhnui
推荐于2016-06-29 · TA获得超过289个赞
知道小有建树答主
回答量:533
采纳率:0%
帮助的人:0
展开全部
Assembly ab=Assembly.Load("XXX");

Type fieldType=ab.GetType("NameSpace.Class.YouNeedField")
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hlppxxx
2008-11-25
知道答主
回答量:26
采纳率:0%
帮助的人:0
展开全部
把字段声明为public
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式