Я пытаюсь использовать Type.InvokeMember (String, BindingFlags, Binder, Object, array []) с привязкой по умолчанию.
один из аргументов целевого метода в массиве объектов является ссылочным типом, для которого установлено значение null. Я хочу, чтобы вызываемый метод создавал экземпляр ссылочного типа, чтобы я мог продолжать его использовать. Например:
using System;
namespace ConsoleApplication6
{
class A
{
public void GetReferenceType(object o)
{
o = new object();
}
}
class Program
{
static void Main(string[] args)
{
object o = null;
A a = new A();
Type t = typeof(A);
t.InvokeMember("GetReferenceType", System.Reflection.BindingFlags.InvokeMethod, null, a, new object[] { o });
if (o == null)
{
throw new NullReferenceException();
}
else
{
//do something with o;
}
}
}
}
Обходной путь должен дать A
Свойство и получить доступ к o через него.
Есть ли другой способ сделать это без изменения A
?