Используйте Prism EventAggregator, как в старой системе событий CAB с строковыми именами событий - PullRequest
1 голос
/ 28 марта 2011

Я вижу Eventaggregator Prism всегда и используется только с GetEvent, что очень странно. Я привык к старой системе событий CAB - теперь использую реализацию Mediator от Marlon Grech - где я определил строковые константы таким образом, что мне не нужно создавать дополнительные классы для запуска / переноса моих данных, если это простой тип int или тип значения.

[MediatorMessageSink(MediatorMessages.AddSchoolclass, ParameterType = typeof(int))]
        public void OnSchoolclassAdded(int schoolclassId)
        {
            // do stuff with schoolclassId
        }

Как я могу сделать то же самое с Eventaggregator от Prismn

1 Ответ

0 голосов
/ 01 апреля 2011

Вы можете объявить один класс событий, который будет использоваться для всех ваших агрегатных событий, и передать строку в качестве полезной нагрузки, но я бы не стал рекомендовать такой подход.Разработчики Prism сочли бы это очень запутанным.

Агрегатор событий использует архитектуру, отличную от старой CAM.Я также не был доволен необходимостью объекта события, когда вносил изменения.Но с тех пор я был продан на подходе - объект события - в основном однострочный, который я генерирую, используя шаблон ReSharper.Причина, по которой он мне так нравится, заключается в том, что он дает мне место для логики, которая может понадобиться мне для участия в мероприятии.

...