Mapster creates the destination object and maps values to it.
var destObject = sourceObject.Adapt<Destination>();You make the object, Mapster maps to the object.
sourceObject.Adapt(destObject);Mapster also provides extensions to map queryables.
Important
Avoid calling ProjectToType() before materializing queries from Entity Framework. This is known to cause issues. Instead, call ToList() or ToListAsync() before calling ProjectToType.
using (MyDbContext context = new MyDbContext())
{
// Build a Select Expression from DTO
var destinations = context.Sources.ProjectToType<Destination>().ToList();
// Versus creating by hand:
var destinations = context.Sources.Select(c => new Destination {
Id = p.Id,
Name = p.Name,
Surname = p.Surname,
....
})
.ToList();
}