Я пытаюсь обновить переменную ref container
, которая была передана через конструктор, чтобы она стала равной новому объекту в методе Run
. Конечно, в методе Run
я обновляю ссылку на Foo::_container
, а не на переменную container
, определенную в Main
. Поэтому мне интересно, есть ли способ сохранить ссылку на контейнер, которая была передана через конструктор, и впоследствии обновить значение ссылки. Спасибо.
public class Foo
{
private IContainer _container;
public Foo(ref IContainer container)
{
_container = container;
}
public void Run()
{
var temp = new Container();
_container = temp;
}
}
static class Main
{
static void Main()
{
IContainer container = null;
(new Foo(ref container)).Run();
// container is still null
Console.WriteLine(container);
}
}