.NET 4.x Динамически подписывать на событие (из списка) - C#
Формулировка задачи:
Доброе время суток, необходимо в независимости от количества элементов списка проделывать данную манипуляцию:
В список из папки попадают сортировщики N - количество (в примере будет 4), каждый из них имплементирует интерфейс ISorter и имеют ивент OnSwap (который файрится при работе сортировщика), нужно "автоматизировать" написание следующего кода, какие советы, может решение вы знаете?
BubbleSort bubbleSorter = new BubbleSort();
CoctailSort coctailSorter = new CoctailSort();
SelectSort selectSorter = new SelectSort();
ShellSort shellSorter = new ShellSort();
bubbleSorter.OnSwap += OnControllerSwap;
coctailSorter.OnSwap += OnControllerSwap;
selectSorter.OnSwap += OnControllerSwap;
shellSorter.OnSwap += OnControllerSwap;
bubbleSorter.SortArray(ArrayConvertor.ConvertTo1DArr(array));
coctailSorter.SortArray(ArrayConvertor.ConvertTo1DArr(array));
selectSorter.SortArray(ArrayConvertor.ConvertTo1DArr(array));
shellSorter.SortArray(ArrayConvertor.ConvertTo1DArr(array));Решение задачи: «.NET 4.x Динамически подписывать на событие (из списка)»
textual
Листинг программы
var sorters = new List<ISorter>
{
new BubbleSort(),
new CoctailSort(),
new SelectSort(),
new ShellSort()
};
foreach (var sorter in sorters)
{
sorter.OnSwap += OnControllerSwap;
sorter.SortArray(ArrayConvertor.ConvertTo1DArr(array));
}