Обычно для разрешения имени типа вам нужно предоставить больше информации, чем просто имя класса. Поэтому я думаю, что ответ "не совсем".
Метод для сопоставления строки с типом - Type.GetType
, который описан здесь: https://docs.microsoft.com/en-us/dotnet/api/system.type.gettype?view=netframework-4.7.2
Как видите, в вакууме мы не можем сказать, что "Helper"
или "IHelper"
будет достаточно. Вы, вероятно, могли бы обойтись с именем класса, полным пространства имен. (Причина, по которой Helper
работает в «жестко запрограммированном» синтаксисе, конечно, заключается в том, что компилятор может использовать преимущества операторов using
при определении значения Helper
. Этот параметр не работает, если GetType
пытается понять строку во время выполнения.)
Если вы можете предоставить собственный распознаватель, возможно, вы сможете заставить его работать точно так, как вы его описали.