Подскажите как перечислить все поля через индексатор , тоесть просмотреть значения полей и если нужно то и присвоить - C#

Узнай цену своей работы

Формулировка задачи:

заместо полей у меня сразу свойства сделаны как получить доступ к ним через индекс ? что бы можно было присваивать значения и выдергивать в коде ниже только часть свойств у меня их около 150 шт
  public string ReturnOnInvestment { get; set; }
                  public string CurrentRatio { get; set; }
                  public string QuickRatio { get; set; }
                  public string LTDebtEquity { get; set; }
                  public string TotalDebtEquity { get; set; }
                  public string GrossMargin { get; set; }
                  public string OperatingMargin { get; set; }
                  public string ProfitMargin { get; set; }
                  public string PerformanceWeek { get; set; }
                  public string PerformanceMonth { get; set; }
                  public string PerformanceQuarter { get; set; }
                  public string PerformanceHalfYear { get; set; }
                  public string PerformanceYear { get; set; }
                  public string Beta { get; set; }
 
// начал делать так и что все 150 штук прописывать так  может есть способ лучше ?
public string  this [int i]
                  {
                      get
                      {
                             if (i == 26) return CurrentRatio;
                             if (i == 27) return QuickRatio;
                             if (i == 28) return LTDebtEquity;
                             if (i == 29) return TotalDebtEquity;
                             if (i == 30) return GrossMargin;
                             if (i == 31) return OperatingMargin;
                             if (i == 32) return ProfitMargin;
                             if (i == 33) return PerformanceWeek;
 
                    set
                      {
                         if(i==0) Tic = value;
 
                       итд 
                      }
мне нужен доступ к этим полям свойствам по индексу что бы можно было заполнять их в цикле и получать значения тоже

Решение задачи: «Подскажите как перечислить все поля через индексатор , тоесть просмотреть значения полей и если нужно то и присвоить»

textual
Листинг программы
public string  this[int i]        
             {
             get
                 {
        
                 if (i == 0) return Name;
                 if (i == 1) return Family;
                 if (i == 2) return Tel;
 
                 }
             set
                 {
        
                 if (i == 0) Name= value;
                 if (i == 1) Family = value;
                 if (i == 2) Tel= value;
                 }
 
 
через такую конструкцию ведь можно интексатор получить  Person[i] 
значит  можно как то получить и  такую получить Person.Pole[i]  без использования методов

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.667 из 5
Похожие ответы