Прежде всего, я должен сказать, что я не настолько опытен в DDD.
Я проектирую модель предметной области, которая извлекает данные из двух баз данных и одного остального API. Он будет извлекать некоторые свойства из одной устаревшей базы данных, некоторые из Новой базы данных и Rest из стороннего API Rest.
В настоящее время я решил создать антикоррупционный слой в инфраструктуре. sql проект, который будет отвечать за вызов базы данных для унаследованной и новой базы данных и сопоставление с моделью моего домена.
Необходимо также сохранить это как в базе данных, так и в API.
Но где мне нужно сопоставить стороннюю версию Свойство API с моей моделью Домена?
В настоящее время я выбрал две обобщенные модели: одну мою модель MainDomain и вторую мой сторонний API.
public class MainDomain {
public int Id { get; private set; } // Legacy DB
public string Name { get; private set; } // New DB
public string LegacyProperty1 { get; private set; } //Legacy DB
public string LegacyProperty2 { get; private set; } //Legacy DB
public string ThrirdPartyAPIPropert1 { get; private set; } // 3rd Party API
public string ThrirdPartyAPIPropert2 { get; private set; } // 3rd Party API
public string ThrirdPartyAPIPropert3 { get; private set; } // 3rd Party API
// Many more properties, value objects.
}
public class ThirdPartyApiDomain
{
public string ThrirdPartyAPIPropert1 { get; private set; } // 3rd Party API
public string ThrirdPartyAPIPropert2 { get; private set; } // 3rd Party API
public string ThrirdPartyAPIPropert3 { get; private set; } // 3rd Party API
// many more property, entity and collections
}