Мне нужно иметь возможность вызывать утилиты из разных версий одной и той же сборки, обе из которых находятся в GAC:
gacutil /l TestAssembly
TestAssembly.dll, Version=1.0.0.0 ....
TestAssembly.dll, Version=2.0.0.0 ....
И где-то в коде мне нужно динамически загрузить любой из них:
TestObject testObject;
if (loadFromVersion1)
{
testObject = // instantiate test object from the first assembly
}
else
{
testObject = // instantiate test object from the second assembly
}
Есть ли способ сделать это без отражения (я знаю, как сделать это с помощью отражения) и использовать вместо этого строго типизированные объекты?