Я пытаюсь создать решение, управляемое событиями, которое имеет несколько различных ограниченных контекстов, использующих опубликованное событие. Решения основаны на .Net 8 и C#.
Вот пример проблемы:
[*]У меня есть один ограниченный контекст. /solution, которое публикует событие в сетке событий Azure. Событие — MemberCreatedIntegrationEvent.
[*]Существует 3 потребляющих ограниченных контекста/решения этого события.
[*]Субъект Member имеет несколько адресов, каждый из которых имеет строку свойства для адреса1, города, штата и почтового индекса.
[*]Конечно, у Member есть гораздо больше свойств, чем адреса. У него есть еще 8 свойств, которые представляют собой коллекции свойств (например, CreditCards, PhoneNumbers и т. д.). Я упоминаю об этом, чтобы иметь в виду потенциальные решения.
[*]MemberCreatedIntegrationEvent.cs является частью общего пакета nuget для всех решений.
Предлагаемое решение 1. MemberCreatedIntegrationEvent содержит подход типа модели/DTO, например:
public class MemberDEIPreferenceCreatedIntegrationEvent : BaseIntegrationEvent
{
public MemberModel MemberCreated { get; private set; }
public string EventType => nameof(MemberCreatedIntegrationEvent);
}
Предлагаемое решение 2. MemberCreatedIntegrationEvent содержит только атрибуты всех базовых моделей, такие как:
public class MemberDEIPreferenceCreatedIntegrationEvent : BaseIntegrationEvent
{
public string MemberID { get; private set; }
public string FirstName { get; private set; }
public string LastName { get; private set; }
public string Address1 { get; private set; }
public string City { get; private set; }
public string ZipCode { get; private set; }
public string State { get; private set; }
.. Other properties
public string EventType => nameof(MemberCreatedIntegrationEvent);
}
Подробнее здесь: https://stackoverflow.com/questions/790 ... across-mul
Каковы лучшие практики совместного использования полезных данных событий интеграции между несколькими решениями .Net C#? ⇐ C#
Место общения программистов C#
1729033893
Anonymous
Я пытаюсь создать решение, управляемое событиями, которое имеет несколько различных ограниченных контекстов, использующих опубликованное событие. Решения основаны на .Net 8 и C#.
Вот пример проблемы:
[*]У меня есть один ограниченный контекст. /solution, которое публикует событие в сетке событий Azure. Событие — MemberCreatedIntegrationEvent.
[*]Существует 3 потребляющих ограниченных контекста/решения этого события.
[*]Субъект Member имеет несколько адресов, каждый из которых имеет строку свойства для адреса1, города, штата и почтового индекса.
[*]Конечно, у Member есть гораздо больше свойств, чем адреса. У него есть еще 8 свойств, которые представляют собой коллекции свойств (например, CreditCards, PhoneNumbers и т. д.). Я упоминаю об этом, чтобы иметь в виду потенциальные решения.
[*]MemberCreatedIntegrationEvent.cs является частью общего пакета nuget для всех решений.
Предлагаемое решение 1. MemberCreatedIntegrationEvent содержит подход типа модели/DTO, например:
public class MemberDEIPreferenceCreatedIntegrationEvent : BaseIntegrationEvent
{
public MemberModel MemberCreated { get; private set; }
public string EventType => nameof(MemberCreatedIntegrationEvent);
}
Предлагаемое решение 2. MemberCreatedIntegrationEvent содержит только атрибуты всех базовых моделей, такие как:
public class MemberDEIPreferenceCreatedIntegrationEvent : BaseIntegrationEvent
{
public string MemberID { get; private set; }
public string FirstName { get; private set; }
public string LastName { get; private set; }
public string Address1 { get; private set; }
public string City { get; private set; }
public string ZipCode { get; private set; }
public string State { get; private set; }
.. Other properties
public string EventType => nameof(MemberCreatedIntegrationEvent);
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79091999/what-is-the-best-practices-on-how-to-share-integration-event-payloads-across-mul[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия