Как передать параметры в конструктор класса из метода в этом же классе C#

Возможно ли вызвать конструктор класса из метода того же класса? Например, мне надо передать объект типа Textwriter в конструктор.

class Class{
Class(TextWriter){}
public void SampleFunction(){
//Отсюда необходимо вызвать конструктор
}
}

Ответы (2 шт):

Автор решения: Zergatul

Нельзя. Но если нужно такое поведение, можете вынести весь код конструктора в отдельный метод. Но при этом вы потеряете преимущества кода, который может быть выполнен только в конструкторе (например инициализация readonly полей/свойств):

class Class
{
    public Class(TextWriter writer)
    {
        Init(writer);
    }

    private void Init(TextWriter writer)
    {
        // код конструктора
    }

    public void SampleFunction()
    {
        Init(new TextWriter());
    }
}
→ Ссылка
Автор решения: OXYGEN
class Class1
{
    private TextWriter _textWriter { get; set; }

    //конструктор с параметрами
    Class1(TextWriter textWriter)
    {
        _textWriter = textWriter;
    }
    //конструктор без параметров
    Class1()
    {

    }

    //вызываем метод с параметрами , вернет  новый класс
    public Class1 SampleFunction(TextWriter textWriter)
    {
       Class1 aClass1 = new Class1(textWriter);
       return aClass1;
    }
    //передаем в метод через параметры в этот класс
    public void SampleFunction2(TextWriter textWriter)
    {
        _textWriter = textWriter;
    }
}
→ Ссылка