Проблема Mapster с сопоставлением объектов значенийC#

Место общения программистов C#
Ответить
Anonymous
 Проблема Mapster с сопоставлением объектов значений

Сообщение Anonymous »

У меня проблема с сопоставлениями. Подробности:
У меня есть запись:

Код: Выделить всё

public record EmployeeId
{
public Guid Value { get; }
public EmployeeId(Guid value)
{
DomainException.ThrowIf(
value == Guid.Empty,
"Employee ID is required");
Value = value;
}
}
И еще:

Код: Выделить всё

public record EmployeePreview
{
public Guid Id { get; init; }
//And other properties
}
И у меня есть сопоставление

Код: Выделить всё

internal class EmployeeMappingProfile : IRegister
{
public void Register(TypeAdapterConfig config)
{
config.ForType()
.Map(dest => dest.Id, src => src.Value);
}
}
но когда я пытаюсь вызвать такой код

Код: Выделить всё

var empl = new EmployeeId(Guid.NewGuid());
var res = empl.Adapt();
мой объект результата имеет идентификатор = пустой идентификатор (значение по умолчанию)
И у меня есть регистрация картографа:

Код: Выделить всё

TypeAdapterConfig.GlobalSettings.Scan(assembly);
Что я делаю не так?
Я пробовал другие методы, такие как MapWith или ConstructUsing, но результат тот же>

Подробнее здесь: https://stackoverflow.com/questions/797 ... ue-objects
Ответить

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

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

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

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

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