Код: Выделить всё
public interface IMapper
{
public TDtoType MapEntityToDto(TDbType toBeMapped, params object[] varargs);
public TDbType MapDtoToEntity(TDtoType toBeMapped, params object[] varargs);
}
Код: Выделить всё
public class PositionMapper : IMapper
{
public PositionDto MapEntityToDto(Position toBeMapped, params object[] varargs) => new()
{
StorageArea = toBeMapped.Storage.Name,
Width = toBeMapped.Width,
Height = toBeMapped.Height,
Depth = toBeMapped.Depth
};
public Position MapDtoToEntity(PositionDto toBeMapped, params object[] varargs) => new()
{
Id = varargs.Length >= 2 && varargs[1] is Guid guid ? guid : Guid.Empty,
Depth = toBeMapped.Depth,
Width = toBeMapped.Width,
Height = toBeMapped.Height,
Storage = varargs[0] as Storage
?? throw new ArgumentNullException(nameof(Storage), "Storage cannot be null"),
Carrier = varargs.Length >= 3 ? varargs[2] as Carrier : null
};
}
Подробнее здесь: https://stackoverflow.com/questions/792 ... interfaces
Мобильная версия