使用反射访问.NET 中的私有字段
反射提供了一种强大的机制来检查 .NET 类的内部组件并与之交互。 一个常见的应用程序是访问和修改私有成员,例如字段。此示例演示如何查找名为“_bar”的私有字段,该字段标有自定义 [SomeAttribute]
属性。
关键是使用 BindingFlags
枚举。 该解决方案结合了 BindingFlags.NonPublic
和 BindingFlags.Instance
标志,如下所示:
<code class="language-csharp">FieldInfo[] fields = myType.GetFields(BindingFlags.NonPublic | BindingFlags.Instance);</code>
BindingFlags.NonPublic
指示 GetFields
在其搜索中包含私有字段,而 BindingFlags.Instance
将搜索限制为实例字段(不包括静态字段)。 这种有针对性的方法可确保您找到“_bar”字段并获取其详细信息,包括任何关联的属性。
以上是如何在 C# 中使用反射访问具有特定属性的名为'_bar”的私有字段?的详细内容。更多信息请关注PHP中文网其他相关文章!