我正在尝试使用AutoMapper 6.3来允许我将模型自动映射到视图模型中。
首先,我像这样将我的AutoMapper
实例注册到我的IUnitContainer
var mapper = new MapperConfiguration(cfg =>
{
cfg.AddProfile<AutoMapperProfile>();
});
container.RegisterInstance<IMapper>(mapper.CreateMapper());
现在,在我的控制器中,我想从数据库中提取一个模型,然后我想将其映射/投射到我的视图模型。
我尝试执行以下操作
var task = UnitOfWork.Tasks.Get(123)
.ProjectTo<TaskViewModel>();
但我似乎找不到我认为它将是AutoMapper
项目一部分的ProjectTo
扩展。
如果我的AutoMapperProfile
已经创建了映射,投影视图模型的正确方法是什么?
它似乎在Automapper.QueryableExtensions中:
https://github.com/AutoMapper/AutoMapper/blob/8dd104aa7390c12c97c4195cce6f6ff66de24f51/src/AutoMapper/QueryableExtensions/Extensions.cs
只要 LINQ 更改中的上一项看起来是 IQueryable,您就可以调用它。