ValueObject и FluentResults
Допустим, что есть 1 ValueObject
:
public class Address
{
private Address()
{
}
public string Value { get; private init; }
public static Result<Address> Create(string address)
{
if (string.IsNullOrWhiteSpace(address))
{
return Result.Fail("Адрес не может быть пустым");
}
return new Address { Value = address };
}
}
В контроллер приходит такой запрос:
public class CreateRequest
{
public string FirstAddress { get; set; }
public string SecondAddress { get; set; }
}
Необходимо сделать из 2-х свойств в запросе 2 ValueObject
'a Address
, но нужно как-то клиенту отдать 400 bad request
, если есть ошибки при создании ValueObject
'ов.
Но как указывать, что ошибка относится к первому или второму свойству в запросе?
Как вообще лучше отдавать ошибки? Сразу при создании ValueObject
отдавать текст ошибки, или отдавать коды, а потом, на UI слое (в методе контроллера) их заменять на текст?
Нигде не могу найти похожих примеров
Источник: Stack Overflow на русском