Следующий код не компилируется в универсальном приложении Windows 10, но компилируется в консольном приложении .Net (оба используют Reflection):
string objType = "MyObjType";
var a = Assembly.GetExecutingAssembly();
var newObj = a.CreateInstance(objType);
Похоже, что универсальные приложения для Windows не содержат метод Assembly.GetExecutingAssembly()
; и объекты сборки не содержат CreateInstance
.
Activator.CreateInstance имеет 16 перегрузок в .Net и только 3 в приложении Win 10. Я имею в виду расширения рабочего стола.
Возможна ли такая конструкция в Windows 10, и если да, то как? Я пытаюсь создать экземпляр класса из строки, представляющей этот класс.
Assembly.GetType(...)
, а затем позвонитеActivator.CreateInstance(Type)
. Тип в какой сборке? - person Jon Skeet   schedule 03.11.2015typeof(Foo).Assembly
, гдеFoo
— это тип, в котором вы пишете код? - person Jon Skeet   schedule 03.11.2015