Как получить параметры, переданные в Action<T>
? Пример кода должен подчеркнуть то, что я пытаюсь достичь. Извините, что это немного долго.
class Program
{
static void Main(string[] args)
{
Foo foo = new Foo();
foo.GetParams(x => x.Bar(7, "hello"));
}
}
class Foo
{
public void Bar(int val, string thing) { }
}
static class Ex
{
public static object[] GetParams<T>(this T obj, Action<T> action)
{
// Return new object[]{7, "hello"}
}
}
Единственные опции, которые выглядят неопределенно полезными, - это GetInvocationList (), Method и Target. Но ни одна из них, похоже, не содержит данных, которые мне нужны (я думаю, это из-за того, как я объявил Действие). Спасибо
РЕДАКТИРОВАТЬ: это не типы, которые я хочу, а фактические значения - как отмечено в комментируемом бите кода.