Каковы лучшие практики совместного использования полезных данных событий интеграции между несколькими решениями .Net C#?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Каковы лучшие практики совместного использования полезных данных событий интеграции между несколькими решениями .Net C#?

Сообщение 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);
}


Подробнее здесь: https://stackoverflow.com/questions/790 ... across-mul
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»