class Foo<T>
{
public T Bar() { /* ... */ }
}
我想将 Bar 的名字传递给Type.GetMethod(string)
. 我可以这样做someType.GetMethod(nameof(Foo<int>.Bar))
,但这int
在这里完全是任意的;有什么办法可以省略吗?可悲的是,nameof(Foo<>.Bar)
不起作用。
在这个玩具案例中这没什么大不了的,但是如果有多个类型参数,特别是如果它们where
附加了约束,那么将它们全部拼出来可能会成为一项任务。