моно - как использовать ref с CreateInstance или InvokeMethod?

Как пройти мимо 'ref' с помощью CreateInstance в Mono?

Пример:

public MyMethod(ref SomeType data) {...
...
SomeType st = new SomeType();
object handle = Activator.CreateInstance(type, new object[] { st });

Это отлично работает в моем консольном приложении Windows. Проблема в том, что когда я портирую это на Mono, я получаю исключение отсутствующего метода, в котором говорится, что не было обнаружено MyMethod, который принимает тип SomeType.

Если я удалю «ref» из конструктора, Mono найдет метод и запустит его без каких-либо проблем.

Любые идеи?

Заранее спасибо.


person John Yost    schedule 16.02.2013    source источник
comment
Пожалуйста, сообщите об ошибке в (Mono Bugzilla) [bugzilla.xamarin.com/index.cgipting указать, какую версию Mono вы используете.   -  person skolima    schedule 16.02.2013
comment
Готово, bugzilla.xamarin.com/show_bug.cgi?id=10389   -  person John Yost    schedule 19.02.2013
comment
Закрыто. Оказывается, эта проблема была исправлена ​​после моно версии 2.6 (точная версия неизвестна).   -  person John Yost    schedule 28.03.2013


Ответы (1)


Это была проблема с Mono до версии 2.6. Адреса исправлений передаются по ссылке в CreateInstance.

person John Yost    schedule 25.02.2014