есть список. В список можно добавлять элементы только через метод с бизнес-логикой, но при этом список должен быть доступен на чтение. Как заблокировать метод .Add на свойстве/методе чтения элементов списка? только возвращать копию списка?
Выставь наружу свойство с типом IReadOnlyList
можешь добавить в свой класс read-only индексатор вида public YourListItem this[int index] => _innerListOfYourItems[index]; и бегать по нему с помощью цикла for или ещё прямо на уровне класса реализовать IEnumerable < YourListItem > и возвращать public IEnumerator<YourListItem> GetEnumerator() => _innerListOfYourItems.GetEnumerator(); public IEnumerator IEnumerable.GetEnumerator() => _innerListOfYourItems.GetEnumerator(); и тогда станет доступен foreach (YourListItem item in _yourClassInstance) { // do something }
Обсуждают сегодня