Создание делегата из конструктора

Используя отражение, я пытаюсь создать делегат из конструктора без параметров следующим образом:

Delegate del = GetMethodInfo( () => System.Activator.CreateInstance( type ) ).CreateDelegate( delType );

static MethodInfo GetMethodInfo( Expression> func )
{
    return ((MethodCallExpression)func.Body).Method;
}

Но я получаю это исключение: «Невозможно выполнить привязку к целевому методу, поскольку его подпись или прозрачность безопасности несовместимы с типом делегата». Что будет работать?

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

5
задан HappyNomad 15 May 2012 в 03:07
поделиться