Оптимизировать раздутый код, изменить return - C#
Формулировка задачи:
Доброго здоровья заглянувшим в тему.
Столкнулся с необходимостью переделать return. До определённого момента он меня устраивал, хоть и был громоздок и топорен. В нём я возвращаю (формирую JSON-объект) 96 экземпляров класса ManualState_Pot(), который подкласс класса ManualState(),
Теперь появилась необходимость формировать 12 таких массивов (96 элементов по 4 в каждом), и выбрав один - возвращать. Хотел организовать в ретёрне такой цикл:
Но компилятор ругается на непонятное: просит поставить запятую, открыть и закрыть фигурные скобки там, где они уже есть, условия цикла вообще недостижимый код...
Прошу помощи у знатоков, что не так делаю и как сделать правильно?!
return new ManualState() { MS = new ManualState_Pot[] { new ManualState_Pot() { POT = 1, value = MAIN.StatArr[0][1], time = UnixTimeNow(), new_value = MAIN.StatArr[0][3]}, new ManualState_Pot() { POT = 2, value = MAIN.StatArr[1][1], time = UnixTimeNow(), new_value = MAIN.StatArr[1][3]}, new ManualState_Pot() { POT = 3, value = MAIN.StatArr[2][1], time = UnixTimeNow(), new_value = MAIN.StatArr[2][3]}, ... ... new ManualState_Pot() { POT = 95, value = MAIN.StatArr[94][1], time = UnixTimeNow(), new_value = MAIN.StatArr[94][3]}, new ManualState_Pot() { POT = 96, value = MAIN.StatArr[95][1], time = UnixTimeNow(), new_value = MAIN.StatArr[95][3]} } };
return new ManualState() { MS = new ManualState_Pot[] { for (int p = 1; p < 97; p++) { new ManualState_Pot() { POT = p, value = MAIN.StatArr[p-1][1], time = UnixTimeNow(), new_value = MAIN.StatArr[p - 1][3]}; };
Решение задачи: «Оптимизировать раздутый код, изменить return»
textual
Листинг программы
var manualState = new ManualState(); var msList = new List<ManualState_Pot>(); for (int p = 1; p < 97; p++) { msList.Add(new ManualState_Pot() { POT = p, value = MAIN.StatArr[p-1][1], time = UnixTimeNow(), new_value = MAIN.StatArr[p - 1][3] } ); }; manualState.MS = msList.ToArray(); return manualState;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д