问题标签 [automapper-3]

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.

0 投票
1 回答
489 浏览

c# - 如何展平自动映射器列表中的条件对象

我有一个Item包含使用AutoMapperProduct映射到各自ViewModel对象的列表。

在我的 MVC 项目中,我有一个 Action 方法,它显示一个Item带有选中的Product. 为此,我有一个包含展平对象的ViewModel调用,一个's 列表和一个展平 selected 。ItemDetailsViewModelItemProductViewModelProduct

我遇到的困难是最好地展示这个扁平的 selected Product

把它想象成 eBay,你有一个Item,你可以选择多种变体,例如按颜色。对我来说,多种变体是Products. 当用户选择Product我要返回的ItemDetailsItem,列表Products和选定的Product

我想知道这样做的最佳方法是什么?目前我的方法是将一个映射Item到一个ItemDetailsViewModel,选择所需的ProductViewModel,然后专门将ProductViewModel背面的每个属性映射到ItemDetailsViewModel. 此外,由于ItemProduct具有相同的命名属性,映射产品的最后一行将覆盖Items id 和代码。

关于如何最好地配置映射的任何建议?

我省略了我现有的映射,因为它主要是直接的一对一映射,除了将选定的映射ProductViewModelItemDetailsViewModel.

课程

行动

0 投票
1 回答
751 浏览

c# - FileNotFoundException:Silverlight 5 中的 Automapper.Net4 与 Automapper 3.1.0

我的一台机器上有一个奇怪的问题,它在 Silverlight 5 上使用 Automapper 3.1.0 进行项目,我收到以下错误:

System.IO.FileNotFoundException 发生
Message=Could not load file or assembly 'AutoMapper.Net4, Version=3.1.0.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005' 或其依赖项之一。
该系统找不到指定的文件。

我已经尝试了所有选项,但无法找出我在项目中出现此错误的原因。

0 投票
1 回答
1483 浏览

c# - Automapper 使用前缀展开

由于基于约定的自动映射,我有一些从域对象映射的 DTO,即地址字段被展平为 DTO。

这适用于域 - > DTO 转换,但另一种方式是我必须手动“解压”地址。

我想知道是否有可能为映射配置“添加前缀”,所以我可以做类似的事情

否则我必须手动映射每个地址字段,这成为更复杂对象的问题。

我的域对象和 DTO

和以下 DTO:


编辑

我知道全局配置“可识别的前缀”。我宁愿为特定的地图设置强制性前缀(不是“公认的”)。

0 投票
1 回答
52 浏览

automapper-3 - 对象的自动映射器配置

我有这些课程

我有一个List<Album>,我想NamedEntityListViewModel通过NamedEntityViewModel.Name映射到 Album.Name 来映射它。如何在 Automapper 中进行设置?

0 投票
0 回答
905 浏览

automapper - AutoMapper 在使用 ForAllMembers 时忽略 IsSourceValueNull

我有 AutoMapper 的最新 3.1.1 版本。由于某种原因,使用 ForAllMemebers 时的 IsSourceValueNull 似乎不起作用,或者我期待不同的结果:

这是我正在尝试做的一个例子。请不要评论与实体完全一样的 DTO。这只是我遇到的更复杂模型的一个例子。

映射代码如下所示:

我收到源值不能为空的错误。意思是,从数据库返回的联系人为空,这没关系,但 AutoMapper 没有运行 Cotnact 或 ContactId 的条件。在数据库中两者都可以为空。我不得不求助于检查 ForMember 块内的源是否为空。

0 投票
0 回答
206 浏览

c# - 从平面域对象映射到嵌套的 SOAP XML

我有一个从 wsdl 生成的 xml,它深深嵌套并包含很多字段。xml的结构形式为

我是从 wsdl 中按类生成的,但是手动映射这个字段真的很容易出错,我不确定这是否是最好的方法。请问这可能与自动映射器有关吗?

我已经在 automapper 中尝试了上述方法,但没有映射成功。关于如何映射这种对象以使其可维护 600 多个字段的任何想法在旁注中,我的域非常平坦。

0 投票
2 回答
2243 浏览

automapper - 包含对象列表的从源到目标的 Automapper 映射

我必须使用自动映射器创建映射。

目的地是

人员类是

我正在尝试创建映射

但我不知道如何将 Firstname、Lastname 映射到对象 Person 数组。

0 投票
0 回答
824 浏览

c# - 使用 ValueResolver 映射到自定义集合类型的 Automapper 失败

我正在尝试映射一个包含通用集合的类,并希望将该类映射到另一个类,其中该集合是另一个自定义类型。但是,当我尝试进行映射时,我得到一个 AutomapperMapperException。我做了一个重现问题的简化测试项目:

当调用 Mapper.Map() 方法时,我得到以下异常,这表明它不知道如何从 FooCollection 映射到 IFooCollection:

内部异常说:

...所以最后我的问题是:我如何让 automapper 将集合映射到我的自定义集合类型?我可以使用 .AfterMap(..) 手动成功地进行转换,但我不确定这是这个问题的预期解决方案吗?

0 投票
1 回答
6293 浏览

c# - AutoMapper 空源值和自定义类型转换器,映射失败?

将自定义类型转换器 (ITypeConverter) 与 AutoMapper 一起使用时,如果源值为 ,则似乎不会输入类型转换器代码null,例如:

类型转换器看起来像:

在最后两种情况下,结果是:

0 - 不是有效的枚举值

无效的

从调试到测试,在这两种情况下,自定义 TypeConverter 永远不会受到影响,而且 AutoMapper 似乎在映射器中进行了一些初始检查以进行映射,而无需求助于 TypeConverter?

如果我指定一个空字符串 (""),则测试按预期工作。

0 投票
3 回答
1131 浏览

dynamics-crm-2011 - AutoMapper 将对象映射到 MS Dynamics CRM 中的 Lookup 字段

我正在尝试使用 AutoMapper 进行映射。
源对象是 C# 对象

我的目的地是一个名为 crm_destination 的 CRM 实体,它具有诸如评论、主题之类的字段,但它也具有类型为Account的LookUp 字段帐户。

但我不知道如何映射 LookUp 字段。

以下是我的自动映射器

.ForMember(dest => dest.account, opt => opt.MapFrom(src => src.account))抛出类型不匹配的错误。

基本上我的问题是我不知道如何映射 CRM 实体为目的地的 LookUp 字段。