有sizeof()
and typeof()
,但为什么不memberinfo()
返回一个实例System.Reflection.MemberInfo
为帮助反射代码而选择的部分代码。
Example:
Program()
{
Type t = typeof(Foo);
Foo foo = new Foo();
PropertyInfo pi = memberinfo(Foo.Name) as PropertyInfo;
// or shall it be like this
// PropertyInfo pi = memberinfo(foo.Name) as PropertyInfo;
string name = pi.GetValue(foo, null);
}
我试图了解是否有根本原因可以在 C# 规范中实现这一点。
我并不是在抨击什么,我只是在做一些一厢情愿的事情,所以请善待。
埃里克·利珀特 (Eric Lippert) 在他的blog
直接引用那篇文章:
我突然想到以下几个{尚未完成此操作的原因}。 (1) 如何明确指定您想要特定显式接口实现的方法信息? (2) 如果重载决策会跳过某个特定方法,因为该方法不可访问,该怎么办?获取不可访问方法的方法信息是合法的;元数据始终是公开的,即使它描述了私人详细信息。我们是否应该使其无法获取私有元数据,从而使该功能变弱,或者我们应该使其成为可能,并使 infoof 使用与 C# 的其余部分略有不同的重载解析算法? (3) 如何指定您想要索引器设置器、属性获取器或事件处理程序加法器的信息?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)