Есть у меня класс с полем 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.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Помогите пожалуйста разобраться в применении EventHandlerЯ написал для проверки простую консольную программу:
В данный момент для прочитывания файла используется StremReader
У меня есть метод в классе, который создает список моих линийКоличество точек в одной линии может достигать 1700000 и больше