Context.Items 仅在使用 Map 重载 .NET 8 时才可用

问题描述 投票:0回答:1

从 .NET 6 升级到 .NET 8 后,我收到此错误:

Context.Items 仅在使用采用 Action(IMappingOperationOptions) 的 Map 重载时才可用!考虑使用 Context.TryGetItems 代替。

代码:

_mapper.Map<List<UserRoleMapping>, List<UserRoleMappingModel>>(user.UserRoleMappings);
  • UserRoleMapping
    是一个实体
  • UserRoleMappingModel
    是一个模型类
  • user.UserRoleMappings
    是上下文结果

映射器简介

CreateMap<UserRoleMapping, UserRoleMappingModel>()
     .ForMember(m => m.UserRoleName, o => o.MapFrom(src => src.UserRole.Name))
     .ForMember(m => m.UserName, o => o.MapFrom(src => src.User.Name))
     .ForMember(m => m.Guid, o => o.MapFrom(src => src.UserRole.Guid.ToString()));

AutoMapper 和 EF Core 的所有软件包均已更新

linq entity-framework-core automapper .net-8.0
1个回答
0
投票

如果没有看到实体和模型中的属性,很难说,但你可以尝试这个:

var userRoleMappingsModel = _mapper.Map<List<UserRoleMappingModel>>(user.UserRoleMappings);
© www.soinside.com 2019 - 2024. All rights reserved.