Как структурировать класс или функцию / метод (или интерфейс), чтобы в рамках использования я мог передавать значения в скобках {}?

Как структурировать класс или функцию / метод (или интерфейс), чтобы в рамках использования я мог передавать значения в скобках {}?

В следующих:

using (var something = new SomeFunction(somevalue) { AnotherValue = anotherValue, AdditionalValue = adValue })

2 ответа

Решение

Ваш код полностью действителен. Вы можете написать свой use пункт как:

public class SomeClass: IDisposable
{
    public SomeClass(object somevalue) {
    }

    public int AnotherValue { get; set; }

    public int AdditionalValue { get; set; }

    internal void ImHere() {
        throw new NotImplementedException();
    }

    public void Dispose() {
        throw new NotImplementedException();
    }
}

static void Main(string[] args) {
    object somevalue = null;
    using (var something = new SomeClass(somevalue) { AnotherValue = 1, AdditionalValue = 2 }) {
        something.ImHere();
    }
}

Использование скобок {} Вы можете установить открытые свойства этого объекта после завершения конструктора.

AnotherValue а также AdditionalValue являются свойствами SomeFunction

Это называется инициализатором объекта.

Другие вопросы по тегам