为了账号安全,请及时绑定邮箱和手机立即绑定

c# getField用法

c# getField用法

C#
Cats萌萌 2019-01-28 14:18:46
问题描述在学习c#项目时,遇到这样一条语句 FieldInfo field = base.GetType().GetField(base2.Tag.ToString(), BindingFlags.NonPublic | BindingFlags.Instance);问题出现的环境背景及自己尝试过哪些方法查了很多,大概的作用类似于将对象转化为字典,应该是03之前的版本这样做的相关代码// 请把代码文本粘贴到下方(请勿用图片代替代码)你期待的结果是什么?实际看到的错误信息又是什么?请问具体的每一个函数在整个过程的作用,还有怎么类比字典的add方法,往里面加?谢谢
查看完整描述

1 回答

?
达令说

TA贡献1821条经验 获得超6个赞

不是把对象转化为字典,而是获取字段(field)的元数据及其相关信息,这个信息是以FieldInfo类来呈现的。在你的例子中,获取的是base2.Tag的元数据,然后这些元数据被保存在field变量中。

首先通过base.GetType()获取基类的元数据,然后通过GetField(base2.Tag.ToString())获取base2.Tag的元数据。BindingFlags.NonPublic | BindingFlags.Instance是指定base2.Tag的修饰符等。

(中文不太好 抱歉)


查看完整回答
反对 回复 2019-01-28
  • 1 回答
  • 0 关注
  • 1835 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信