Jeer
@Jeer
уверенный пользователь

Как правильно писать на c# классы-обертки над коллекциями, чтобы доступ к коллекции был по имени класса?

Привет,
Допустим есть класс Prices, внутри которого инкапсулирована одна коллекция с историей цен
public class Record
{
  public DateTime Date { get; set; }
  public MenuTypeEnum MenuType { get; set; }
  public decimal? Price { get; set; }
}

public class Prices
{
  public Record[] Records { get; private set; }

  public Record GetCurrentVersion()
  {
    return this.Records.OrderByDescending(x=>x.Date).FirstOrDefault();
  }
}


Соответственно, при работе с таким классом создается объект и доступ к коллекции осуществляется через точку
var price = new Prices { /передаём коллекцию/ };
var historyCount = price.Records.Count();


Был какой-то синтаксис, чтобы можно было работать с коллекцией сразу по имени класса, чтобы не прописывать каждый метод внутри класса, а по имени класса применять существующие методы для работы с коллекциями:
var price = new Prices { /передаём коллекцию/ };
var historyCount = price.Count();
  • Вопрос задан
  • 375 просмотров
Решения вопроса 1
Jeer
@Jeer Автор вопроса
уверенный пользователь
Нашел, этот раздел называется "индексаторы" метанит
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы