Я унаследовал какой-то код, который я бы хотел сделать DRY до 2 циклов.Как создать анонимный массив ссылок на объекты
Внешняя петля выполняет итерацию над объектом checkBoxeList. Внутренний цикл проверяет все поля.
CheckBoxList[] DefaultLists = { ScanDefaultTasks, BehDefaultTasks,MEGDefaultTasks,DefaultQuestionnaires };
for (int i = 0; i < DefaultLists.Count(); i++) {
for (int j = 0; i < DefaultLists[i].Items.Count; j++)
{
DefaultLists[i].Items[i].Selected = true;
}
}
Как мог DefaultList
быть построен таким образом, что он хранит ссылки на каждый из объектов CheckBoxList?
Как следует называть эти ссылки?
Похоже, что одним из решений является построение "box" class. Этот шаблон происходит несколько раз, в большинстве случаев дублируя большую длину избыточного кода. Построение класса для каждого экземпляра кажется излишним.
Оригинальные выглядит как
for (int i = 0; i < ScanDefaultTasks.Items.Count; i++)
{
ScanDefaultTasks.Items[i].Selected = true;
}
for (int i = 0; i < BehDefaultTasks.Items.Count; i++)
{
BehDefaultTasks.Items[i].Selected = true;
}
for (int i = 0; i < MEGDefaultTasks.Items.Count; i++)
{
MEGDefaultTasks.Items[i].Selected = true;
}
for (int i = 0; i < DefaultQuestionnaires.Items.Count; i++)
{
DefaultQuestionnaires.Items[i].Selected = true;
}
Может быть, я не понимаю, но что случилось с 'вар DefaultLists = новый List() {ScanDefaultTasks, BehDefaultTasks, MEGDefaultTasks, DefaultQuestionnaires};'? –
@ KonradKokosa как конструкция CheckBoxList [], страница зависает до таймаута. Почему, я еще не понимаю. – Will