Вы не можете использовать ключевое слово this
при объединении конструкторов, потому что this
относится к объекту, который еще не был создан (создание объекта не начинается до некоторого (верхнего уровня или базы). ) блок конструктора был введен). Более того, почему именно вы хотите это сделать? Это кажется довольно бессмысленным, когда у вас есть доступ к ключевому слову this
везде.
Я рекомендую просто использовать независимые конструкторы как таковые:
public sealed class ClassA : IMethodA
{
private readonly IMethodA _methodA;
public ClassA()
{
_methodA = this;
}
public ClassA(IMethodA methodA)
{
_methodA = methodA;
}
}
Возможно, я неправильно понимаю, что вы пытаетесь сделать, но, надеюсь, это решит проблему для вас.