ja7*_*a72 5 c# reflection language-design
有sizeof()和typeof(),但为什么不memberinfo()返回的实例System.Reflection.MemberInfo为代码,以便在反射代码,以帮助选择的一部分.
例:
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);
}
Run Code Online (Sandbox Code Playgroud)
我试图了解是否有一个根本原因可以在C#规范中实现.
我不是在抨击任何事情,我只是在做一些一厢情愿的想法,所以请善待.
有几个项目使这种类型的功能很难.其中一个主要是重载方法.
class Example {
public void Method() {}
public void Method(int p1) {}
}
Run Code Online (Sandbox Code Playgroud)
MethodInfo以下哪个会回归?
var info = memberinfo(Example.Method);
Run Code Online (Sandbox Code Playgroud)
正如韦斯利指出的那样,埃里克的博客对此问题进行了全面讨论.
| 归档时间: |
|
| 查看次数: |
813 次 |
| 最近记录: |