В моем классе нет конструктора без параметров по умолчанию. Он имеет такой конструктор вместо:Как передать параметры конструктора в AppDomain.CreateInstanceXXX?
public Section(string fileName) {...}
Я должен создать экземпляр моего класса внутри некоторого AppDomain
. Если мой класс имел конструктор по умолчанию, то я хотел бы сделать это следующим образом:
AppDomain domain = AppDomain.CreateDomain("ACAD-0001:409");
ISection section = (ISection)domain.CreateInstanceAndUnwrap(
typeof(Section).Assembly.FullName, typeof(Section).FullName);
Но нет конструктора по умолчанию. Как передать параметры моего конструктора?
Я ожидал, что это что-то вроде этого: работа
string cuiFile = "...";
ISection section = (ISection)domain.CreateInstanceAndUnwrap(
typeof(Section).Assembly.FullName,
typeof(Section).FullName,
new object[] { cuiFile });
Но это не работает.
Вам необходимо [эта перегрузка] (https://msdn.microsoft.com/en-us/library/dd414842 (v = vs.110) .aspx) , – Amy
https://msdn.microsoft.com/pl-pl/library/dd414842(v=vs.110).aspx - обратите внимание, что существует TWO-объект [] - один из них - ARGS, а другой - атрибуты – quetzalcoatl
@Amy , Спасибо! Проблема решена. –