Реализация выпадающего списка класса

106
13 октября 2019, 16:40

Есть у меня класс с полем Commisioning, Commisioning имеет 3 значения:

"c 1994"
"до 1994"
"с 1.07.1995"

есть у него метод, получения этих самых значений значений, данный метод я использую для формирования выпадающего списка на VIEW.

 public class ThermLossesDataInputWaterPipeline
 {
    [Display(Name = "Год ввода в эксплуатацию")]
     public string Commissioning { get; set; }   

     public List<string> getSelectListCommisioning()
     {
          List<string> selectListCommisioning = new List<string>() { "до 1994", "с 1994", "с 1.07.1995" };
          return selectListCommisioning.ToList();
     }
 }

Во так выглядит select во View

  <select class="form-control" name="Commissioning" id="commissioning" asp-items="@new SelectList(Model.ThermLossesDataInputWaterPipeline.getSelectListCommisioning())"></select>

Есть класс, с расчетом каких-либо данных, куда передается значение Commisioning со View в этот расчетный класс,в зависимости от выбранного значения. В данный момент в расчетном классе есть куски кода:

  if (Commisioning == "c 1994"){} 

Что есть плохо, т.к если я поменяю в моделе значение Commisioning, мне придется еще в 10 местах программы менять это значение. Я пытаюсь уйти от такого с помощью конструкции:

ThermLossesDataInputWaterPipeline thermLossesDataInputWaterPipeline = new ThermLossesDataInputWaterPipeline();
    if (Commisioning = thermLossesDataInputWaterPipeline.getSelectListCommisioning()[0]){}

Что бы уйти от явного сравнения строк, но мне кажется этот подход также не верен. Как правильно реализовать данный кусок кода, что можно использовать? Была мысль реализовать это как-то с помощью Enum, но не представляю как это сделать и можно ли через Enum.

READ ALSO
Использование EventHandler C# .NET

Использование EventHandler C# .NET

Помогите пожалуйста разобраться в применении EventHandlerЯ написал для проверки простую консольную программу:

112
C++ CLR/CLI array of array&lt;Byte&gt;

C++ CLR/CLI array of array<Byte>

Собственно какой правильный синтаксис у 2D array?

140
Как вызвать диалоговое окно и указать путь к файлу?

Как вызвать диалоговое окно и указать путь к файлу?

В данный момент для прочитывания файла используется StremReader

127
OutOfMemoryException

OutOfMemoryException

У меня есть метод в классе, который создает список моих линийКоличество точек в одной линии может достигать 1700000 и больше

132