Тьфу, вы правы, хотя m_typeArguments работает, он возвращает тип, отличный от версии этого свойства, поэтому я удалил пример приведения интерфейса к утке.

инаю работать с динамическими объектами в .Net, и я не могу понять, как что-то сделать.

У меня есть класс, который наследуется от DynamicObject, и я переопределить метод TryInvokeMember.

например

class MyCustomDynamicClass : DynamicObject
{
    public override bool TryInvokeMember(InvokeMemberBinder binder, object[] args, out object result)
    {
        // I want to know here the type of the generic argument
    }
}

И внутри этого метода я хочу знать тип (если есть) общих аргументов в вызове.

например Если я вызову следующий код, я хочу получить значения System.Boolean и System.Int32 внутри переопределенного метода моего динамического объекта

dynamic myObject = new MyCustomDynamicClass();
myObject.SomeMethod<bool>("arg");
myObject.SomeOtherMethod<int>("arg");

В настоящее время, если я размещаю точку останова внутри переопределенного метода, я могу получить имя вызываемого метода («SomeMethod» и «SomeOtherMethod», а также значения аргументов, но не универсальные типы).

Как я могу получить эти значения?

Спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос