. .NET — це проста реалізація проміжного шаблону, механізм обміну повідомленнями в процесі (без інших зовнішніх залежностей). Підтримує обмін повідомленнями запитів/відповідей, команд, запитів, сповіщень і подій у синхронній або асинхронній формі, а також підтримує інтелектуальне планування повідомлень через генеріки C#.
По-перше, створіть новий проект asp.net Core 3.1.
Встановлення NuGet:
Щоб зареєструвати сервіс, додайте наступне у метод ConfigureServices у файлі Startup:
Режим запиту/відповіді
Шаблон відповіді на запит схожий на http-запити — шаблон питання і відповіді, але різниця в тому, що з патерном MediatR запитувачу не потрібно звертати увагу на того, хто є відповідачем, і не потрібно звертати увагу на те, хто є запитувачем.
Створіть новий PingHandler.cs-файл із наступним кодом:
Ми спробували викликати це в контролері, і код виглядає так:
Щоб розпочати проєкт, відвідайте:Вхід за гіперпосиланням видно.Ви можете побачити лог, який ми виводимо в консолі, як показано нижче:
Режим сповіщень
Цей режим фактично є підписками на публікацію, підписникам не потрібно звертати увагу на видавця, і видавцям не потрібно звертати увагу на підписників.
Створіть новий клас UserInfo з таким кодом:
Створіть новий клас SendEmail, оформіть підписку на інформацію користувача та надішліть йому електронного листа після отримання повідомлення, код виглядає так:
Створіть новий клас InsertDatabase, а після отримання повідомлення зберігайте інформацію користувача в базі даних за допомогою наступного коду:
Ми намагаємося надіслати повідомлення від UserInfo через контролер, і код виглядає так:
Спробуйте відвідати:Вхід за гіперпосиланням видно., виявив, що обидва методи отримали від нас повідомлення, а саме:
Довідкова документація:Вхід за гіперпосиланням видно.
Нарешті, додайте вихідний код:
Туристи, якщо ви хочете побачити прихований контент цього допису, будь ласка Відповідь
|