如何获取MemberInfo的值?

2024-02-04

我如何获得 a 的值MemberInfo目的?.Name返回变量的名称,但我需要该值。

我认为你可以这样做FieldInfo但我没有代码片段,如果你知道如何做到这一点,你可以提供一个代码片段吗?

Thanks!


虽然我总体上同意 Marc 关于不反映字段的观点,但有时还是需要它。如果你想反映一个成员并且你不关心它是字段还是属性,你可以使用这个扩展方法来获取值(如果你想要类型而不是值,请参阅nawful的回答这个问题 https://stackoverflow.com/questions/15921608/getting-the-type-of-a-memberinfo-with-reflection):

    public static object GetValue(this MemberInfo memberInfo, object forObject)
    {
        switch (memberInfo.MemberType)
        {
            case MemberTypes.Field:
                return ((FieldInfo)memberInfo).GetValue(forObject);
            case MemberTypes.Property:
                return ((PropertyInfo)memberInfo).GetValue(forObject);
            default:
                throw new NotImplementedException();
        }
    } 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取MemberInfo的值? 的相关文章

  • EF Core 返回 null 关系,直到直接访问

    我有一些如下所示的模型 public class Mutant public long Id get set Relations public long OriginalCodeId get set public virtual Origi
  • 带有 ASP.NET 按钮回发的 jQuery UI 对话框

    我的 ASP NET 页面上有一个运行良好的 jQuery UI 对话框 jQuery function jQuery dialog dialog draggable true resizable true show Transfer hi
  • 如何从经过身份验证的 SecurityToken 中获取声明

    我将令牌作为字符串传递到 SOAP 服务中 并验证了该令牌是否有效 我现在有一个 SecurityToken 在调试模式下我可以看到所有声明 特别是我想传递到另一个方法的 userId 声明 我似乎不知道如何获得这些索赔 现在 我解码了令牌
  • C++中类成员函数相互调用有什么好处?

    我是 C 新手 我发现下面的编程风格对我来说很有趣 我在这里写了一个简化版本 include
  • 如何以编程方式删除受信任的根证书颁发机构中的证书?

    我需要能够从组织中的每台电脑中删除特定的证书 是的 我可以逐个座位 但我要到周四才能完成 而且我没有人力逐个座位 是否有使用 C 的编程方式来执行此操作 我认为你不需要编写任何 C 看看certmgr exe del http msdn m
  • 如何在 C# 中以编程方式将行添加到 DataGrid?

    正如标题所述 我正在尝试使用 C 以编程方式将行添加到 DataGrid 但我似乎无法使其工作 这是我到目前为止所拥有的 I have a DataGrid declared as dg in the XAML foreach string
  • C# 结构默认值

    我有一个方法 它接受一个包含许多具有基本数据类型的字段的结构 我想传递大部分默认值 但需要进行一些调整 但我了解结构声明中的基本字段不能包含默认值声明 例如struct S int a 42 现在是这样的 OptionsStruct opt
  • 公交车公共交通算法

    我正在开发一个可以查找公交路线的离线 C 应用程序 我可以提取时间表 巴士 路线数据 我正在寻找适用于基本数据的最简单的解决方案 可以使用什么算法来查找从巴士站 A 到巴士站 B 的路线 是否有适用于 C Java 的开源解决方案 数据库的
  • 自己绘制的WPF自定义滑块

    这是我关于堆栈溢出的第一个问题 所以不要踢它 我在尝试创建 Mac 风格的滑块控件时遇到问题 我已经发现这个解决方案 http www codeproject com KB miscctrl MAC Slider aspx我已经在我的解决方
  • 如何在 C 中链接目标文件?失败并显示“架构 x86_64 的未定义符号”

    因此 我尝试在我的文件 file2 c 中使用另一个 C file1 c 文件中定义的函数 为了做到这一点 我包含了 file1 file1 h 的标头 但是 每当我尝试使用 gcc 编译文件时 我都会收到以下错误 Undefined sy
  • 当我尝试传递临时地址作为参数时,它是一个 UB 吗?

    对于以下 C 代码 include
  • 运行实体框架自定义工具,它有什么作用?

    在 Visual Studio 中 当使用实体框架并为 tt 和 Context tt 文件应用运行自定义工具时 它是什么以及它有什么作用 为什么它解决数据库同步问题 有时 为什么我应该在运行 tt 之前运行它 Context tt 它被称
  • 如何在Windows窗体中打开进程

    我想在我的 Windows 窗体应用程序中打开进程 例如 我希望当用户按下 Windows 窗体容器之一中的按钮时 mstsc exe 将打开 如果他按下按钮 它将在另一个容器上打开 IE DllImport user32 dll SetL
  • C++网络序列化[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一种将 C 数据包序列化为网络流的解决方案 我在这里看到很多帖子提到人们 ACE 谷歌协议缓
  • 在一个解决方案中调用不同项目的方法

    1 个解决方案中有 3 个项目 我对第一个项目中的主文件进行的主要操作 但是我需要调用第三个项目中的方法并使用类 例如 第三个项目有 public DataClasses1DataContext base global WindowsFor
  • 在 Visual Studio 2012 Express 中设置 C++ 调试环境

    我需要调试的应用程序需要设置环境变量 这在 Visual Studio 2012 中似乎非常复杂 我想做类似的事情 set path c foo c bar c windows c program files application set
  • 为什么我可以在另一个函数中定义一个函数?

    请参阅下面的代码 我在另一个函数中定义了一个函数 void test1 void void test2 void printf test2 n printf test1 n int main void test1 return 0 这个用法
  • 查找数组中的多个索引

    假设我有一个像这样的数组 string fruits watermelon apple apple kiwi pear banana 是否有一个内置函数可以让我查询 apple 的所有索引 例如 fruits FindAllIndex ap
  • 为什么存在系统调用

    我一直在阅读有关系统调用及其在 Linux 中如何工作的内容 我还有更多的阅读要做 但我读过的一件事都没有回答 那就是 为什么我们需要系统调用 我知道系统调用是用户空间程序要求内核执行某些操作的请求 但我的问题基本上是 为什么用户空间程序本
  • NHibernate:无状态会话错误消息无法获取代理

    我正在使用 nHibernate 无状态会话来获取对象 更新一个属性并将对象保存回数据库 我不断收到错误消息 无状态会话无法获取代理 我在其他地方有类似的代码 所以我不明白为什么这不起作用 有谁知道问题可能是什么 我正在尝试更新Screen

随机推荐

  • Android 无法实例化应用程序 java.lang.ClassNotFoundException:

    我正在开发 Android 市场上托管的应用程序 有时 每月一次 我收到一份崩溃报告 无法实例化应用程序 java lang ClassNotFoundException 应用程序下载量在 10 000 50 000 之间 我不知道为什么在
  • 如何将图像添加到 JFrame 标题栏?

    我想添加一个图像 小图标 到javax swing JFrame标题栏 我该怎么做 Since JPanel没有标题栏 我假设您指的是JFrame 话虽如此 使用setIconImage http download oracle com j
  • C++11 std 相当于 Boost has_dereference

    Boost 的许多 SFINAE 助手已经随 C 11 一起出现在 std 库中 但是has dereference似乎没有 除了这个功能之外 我已经设法从我的包中消除了 Boost 依赖项 并且我想完全摆脱它 那么如何最好地仅使用 C 1
  • XML 转换和换行符

    好的 我有适用于此 xml 的代码
  • 使用java的小型http服务器?

    我使用 java 创建了以下测试服务器 import java io import java net class tcpServer public static void main String args ServerSocket s nu
  • PostgreSQL 使用组和顺序计算滚动平均值

    我有一张表如下 id x y value 1 1 1 25 1 1 2 42 1 2 3 98 1 2 4 54 1 3 5 67 2 1 1 78 2 1 2 45 2 2 3 96 我必须按 id 对其进行分组 同时按 id x 和 y
  • 尝试安装 VS2019 扩展会导致 NullReferenceException

    自 VS 2019 发布以来 我一直无法向其添加扩展 我最近更新到版本 16 4 3 但当我尝试添加扩展时仍然遇到相同的错误 我尝试执行以下操作 但仍然失败并出现上面的错误对话框 从 Visual Studio 中的扩展管理器安装 从 Ma
  • 在 NSUserDefaults Xcode 中存储和更新 Swift 字典

    我想在用户输入值时存储和更新字典 一切似乎都正常 直到这段代码 并且应用程序崩溃了 override func viewDidLoad super viewDidLoad if NSUserDefaults standardUserDefa
  • 将字体设置为斜体和粗体

    如何将多种字体样式应用于文本 System Drawing Font MyFont new System Drawing Font thisTempLabel LabelFont float thisTempLabel fontSize F
  • Hibernate 的代码优先方法

    我是一名 PHP 开发人员 正在学习 Java Spring MVC Hibernate 我想知道 Hibernate 是否支持像 Entity is ASP NET 或 Doctrine with PHP 这样的代码优先方法 到目前为止我
  • Flutter - 如何删除单个 google_maps_flutter ^0.5.21 标记?

    自成立以来发生了很大变化google maps flutter 这意味着删除单个标记的过程也发生了变化 我在这个问题的旧查询中发现了什么 删除版本 0 0 1 上的标记 https stackoverflow com questions 5
  • 如何从 Slack 机器人发送定期短暂(“隐藏”)消息

    我有兴趣编写一个 Slack 机器人 它会定期向用户发送 短暂 消息 临时消息是出现在频道内的消息 但只能由特定用户看到 例如对机器人 斜杠命令 例如 who 的响应 然而 这里的目标是让机器人定期发送临时消息 并且 出现在频道消息流中 即
  • 启动 Java Swing 桌面应用程序的正确方法

    启动需要 5 10 秒从数据库检索初始数据的应用程序的正确方法是什么 这是我到目前为止所得到的 但我不确定是否有更好的方法 我希望 GUI 和数据库访问位于不同的线程中 以便 GUI 构建与数据检索同时发生 public static vo
  • 如何解析来自 ruby​​ 客户端的 SOAP 响应?

    我正在学习 Ruby 并且编写了以下代码来了解如何使用 SOAP 服务 require soap wsdlDriver wsdl http www abundanttech com webservices deadoralive deado
  • 反序列化抽象类的集合[重复]

    这个问题在这里已经有答案了 我有一个包含 Web API 和 MVC Web 应用程序的解决方案 我的 API 有这个实体模型 有一个抽象父类和几个子类 public abstract class Person public Guid Id
  • Ruby:Proc#call 与 Yield

    以下两个 Ruby 实现之间的行为差 异是什么thrice method module WithYield def self thrice 3 times yield yield to the implicit block argument
  • 将日期 dd/mm/yyyy 格式从表单转换为时间戳?

    我有一份表格 要求填写日期dd mm yyyy格式 我尝试将其转换为时间戳strtotime 功能 但我发现只有当您在表格中填写日期时 它才有效dd mm yyyy 我该如何解决 我不知道国外的情况 但在意大利没有人这样写日期dd mm y
  • 如何获取recyclerview Item位置的文档id?

    我正在使用firebaseUI使用库来填充回收器视图firestore数据库 当我尝试检索时文档编号当我点击回收器查看项目时 它是这样的 DocumentSnapshot snapshot getSnapshots getSnapshot
  • 如何使用curl 访问IBM 语音转文本API?

    我无法使用curl 访问IBM Bluemix 上的语音转文本API 我尝试了文档中使用curl进行无会话请求的示例 但它不起作用 我收到无效的用户 ID 密码消息 这是我得到的错误 代码 401 错误 未授权 描述 2016 10 08T
  • 如何获取MemberInfo的值?

    我如何获得 a 的值MemberInfo目的 Name返回变量的名称 但我需要该值 我认为你可以这样做FieldInfo但我没有代码片段 如果你知道如何做到这一点 你可以提供一个代码片段吗 Thanks 虽然我总体上同意 Marc 关于不反