问题标签 [automapper-9]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc - 每个属性映射上的 Automapper 调用方法
我想在由通用映射器配置映射的每个属性上调用一个特定的方法 xyz()。这可能吗?
我正在使用 Automapper v 9。目的是调用 Automapper 映射的每个属性的方法,以在运行时检查添加删除数据。
asp.net-core - 使用 AutoMapper 进行多对多关系展平
我正在使用 EF Core,并且两个表之间存在多对多关系。
加入表:
关系的另一个表:
我可以使用 AutoMapper 获得如下所示的扁平对象吗?
PaymentMethodDto 是:
我的问题可能是我想在主映射中进行另一个映射。
asp.net-mvc - Automapper AddAfterMapAction 不调用方法
我正在为 Automapper 配置文件映射使用全局配置。
映射器配置
现在我正在使用表达式添加.AddAfterMapAction 。
当我使用这一行进行映射时,它没有调用 Test 方法:var dest = mapper.Map<Student, StudentVM>(StudentService.GetStudent());
我在这里做错什么了吗。因为它应该在映射时调用 Test 方法。
c# - AutoMapper 9.0.0(非静态)给出缺少类型映射配置或不支持的映射错误
我有一个使用带有静态映射的 Automapper 7.0.1 的 ASP.Net Web API。我最近升级到没有静态映射的 Automapper 9.0.0。因此,我使用了推荐的方式,即使用我的依赖容器(Unity Container)将实例注册IMapper为IConfigurationProviderSingletons。
这AutoMapperConfig.GetMapperConfiguration()是一个静态方法,它返回一个包含所有映射的新配置。
Therafter,我已经解决并使用IMapper了许多注册的服务PerRequestLifetimeManager,例如:
我可以看到 Unity 正确解析了 Services 和 Mapper,但是当我调用时Map()使用:
它给了我一个 AutoMapperException 说
缺少类型映射配置或不支持的映射错误
我尝试了很多事情,包括将 AutoMapper 对象注册为 PerRequest 依赖项,即使是使用静态类(没有 DI 容器)的单例,但无济于事。
我确信我的映射是正确的,因为它们在 v 7.0.1 中与静态 AutoMapper 一起使用。升级后我错过了什么?
c# - 在 .Net Core 中配置 Automapper 9.0
我遵循了官方文档,说明了 Automapper 9.0 从静态 API 的转变,但我仍然无法使其在我的 c# dotnet core App 中工作。我得到以下异常:
“AutoMapperMappingException:我的控制器类中缺少类型映射配置或不支持的映射”。
你能告诉我关于 Automapper 9.0 的配置步骤吗?
这是我执行的步骤:
启动.cs
MyMapperProfile 类
控制器类
iqueryable - Automapper Queryable Extensions 没有出现
我正在使用以下内容:
- 实体框架核心 3.1.2
- .Net 标准库 2.1
- 自动映射器 9.0.0
- Automapper.Extension.Microsoft.DependencyInjection 7.0.0
我的 AutoMapper DI 如下所示:
我有一个具有默认实现的 IMapFrom:
我有一个 DTO 类如下:
在我的处理程序中,我正在执行以下操作:
问题是“ProjectTo”不是 IQueryable 的定义。我的印象是 Automapper 有 Queryable Extensions。我错过了 NuGet 包吗?我正在关注 Northwind Traders 的示例,但我无法弄清楚我有什么不同。
我可以像这样使用 IMapper 进入“ProjectTo”:
但我更愿意将它作为 IQueryable 的一部分来做,就像你应该做的那样。
c# - AutoMapper:如何从动态映射到使用属性名称替换
我正在尝试使用AutoMapper从动态对象映射到类类型,其中动态对象在字段名称中具有下划线,而目标类型类具有拼写相同但没有下划线的属性。
源动态对象如下所示:
目标类型的类如下所示:
我尝试了以下方法,但似乎不起作用:
上面的代码导致mappedRecords数组中的所有项目都具有空值或默认属性值。我也尝试了该.Map()方法的各种重载,但仍然没有。我怀疑我缺少一些基本的配置步骤。除了基本的动态对象映射之外,官方文档没有提供很多示例
c# - 我不断收到“需要有一个带有 0 个参数或只有可选参数的构造函数。(参数'type')”
我使用的是版本 9。我使用的是基于配置文件的配置。当我运行应用程序时, Mapper.Map<>() 方法会引发以下异常:
JobAssist.Services.ResumeBankMgmt.API.Application.ViewModels.ResumeBankViewModel 需要有一个带有 0 个参数或只有可选参数的构造函数。(参数“类型”)
我不知道这是什么原因造成的。
c# - 如何将对象映射到 KeyValuePair使用自动映射器?
我正在尝试将我的对象模型映射到 KeyValuePair,但我的结果是 KeyValuePairs,其中 Key = null 且 Value = null。
这样做的正确方法是什么?
谢谢!
ASP.NET 核心 3.1
AutoMapper 9.0.0
AutoMapper.Extensions.Microsoft.DependencyInjection 7.0.0
模型:
轮廓:
试图:
c# - AutoMapper:映射 ImmutableHashSet 的问题
我正在尝试将属性分配给Mapusing 。ReverseMapImmutableHashSetICollectionAutoMapper
Automapper 成功将ImmutableHashSet属性映射到,ICollection但无法将其映射ICollection回ImmutableHashSet
这是最小的可重现示例:
考虑我有 Order如下OrderItem课程:
Order和OrderItem类需要映射到下面的和OrderDto类
下面的类定义要映射到OrderProfile的 Automapper 配置文件,反之亦然。OrderOrderDto
映射和反向映射Order和OrderDto类的代码:
在映射Order objectfromOrderDto时,我得到以下异常:
非常感谢任何有助于解决此问题的指针。
更新
我以某种方式让它通过 custom 工作Converter。但我真的不知道它是如何工作的。我更新了我的映射器配置如下:
我的HashMapConverter班级:
正如你所看到的,我只是返回一个空的ImmutableHashSet,然而,令我惊讶的OrderDto是,它现在已成功映射回Order正确数量的OrderItems Count. 我本来希望Count0 因为我返回一个空的HashSet。我怀疑它正在工作,因为OrderItem并且OrderItemDto也通过AutoMapper.
我想确认我的假设并知道这是否是正确的方法。