В настоящее время я работаю над проектом, в котором у меня есть объект BankAccount для какого-либо другого объекта.
Каждый банковский счет является ссылкой на банковский объект, номер счета и, возможно, IBAN.
Теперь, когда IBAN может быть проверен, как я могу гарантировать, что, когда IBAN установлен для учетной записи, действителен.Каков будет чистый архитектурный подход?В настоящее время у меня есть слой домена без какой-либо ссылки на какой-либо другой уровень, и мне нравится этот чистый подход (меня вдохновил Эрик Эванс DDD).К счастью, проверку IBAN можно выполнить без доступа к какой-либо внешней системе, поэтому в этом случае у меня может быть что-то вроде
puclic class BankAccount
{
public string Iban
{
set { // validation logic here }
}
}
Но теперь я думал, какой подход я бы использовал, если проверка IBAN требует проверки SQL-сервера дляНапример, или внешняя DLL.Как бы я это реализовал.Буду ли я создавать объект значения IBAN, который передается в службу, которая решает, является ли IBAN действительным или нет, и после этого устанавливает его для объекта BankAccount?Или я бы создал фабрику, которой разрешено создавать экземпляры IBAN и выполнять проверку раньше?
Спасибо за вашу помощь!