问题标签 [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.
c# - 如何展平自动映射器列表中的条件对象
我有一个Item
包含使用AutoMapperProduct
映射到各自ViewModel
对象的列表。
在我的 MVC 项目中,我有一个 Action 方法,它显示一个Item
带有选中的Product
. 为此,我有一个包含展平对象的ViewModel
调用,一个's 列表和一个展平 selected 。ItemDetailsViewModel
Item
ProductViewModel
Product
我遇到的困难是最好地展示这个扁平的 selected Product
。
把它想象成 eBay,你有一个Item
,你可以选择多种变体,例如按颜色。对我来说,多种变体是Products
. 当用户选择Product
我要返回的ItemDetails
即Item
,列表Products
和选定的Product
。
我想知道这样做的最佳方法是什么?目前我的方法是将一个映射Item
到一个ItemDetailsViewModel
,选择所需的ProductViewModel
,然后专门将ProductViewModel
背面的每个属性映射到ItemDetailsViewModel
. 此外,由于Item
和Product
具有相同的命名属性,映射产品的最后一行将覆盖Item
s id 和代码。
关于如何最好地配置映射的任何建议?
我省略了我现有的映射,因为它主要是直接的一对一映射,除了将选定的映射ProductViewModel
回ItemDetailsViewModel
.
课程
行动
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' 或其依赖项之一。
该系统找不到指定的文件。
我已经尝试了所有选项,但无法找出我在项目中出现此错误的原因。
c# - Automapper 使用前缀展开
由于基于约定的自动映射,我有一些从域对象映射的 DTO,即地址字段被展平为 DTO。
这适用于域 - > DTO 转换,但另一种方式是我必须手动“解压”地址。
我想知道是否有可能为映射配置“添加前缀”,所以我可以做类似的事情
否则我必须手动映射每个地址字段,这成为更复杂对象的问题。
我的域对象和 DTO
和以下 DTO:
编辑
我知道全局配置“可识别的前缀”。我宁愿为特定的地图设置强制性前缀(不是“公认的”)。
automapper-3 - 对象的自动映射器配置
我有这些课程
我有一个List<Album>
,我想NamedEntityListViewModel
通过NamedEntityViewModel.Name
映射到 Album.Name 来映射它。如何在 Automapper 中进行设置?
automapper - AutoMapper 在使用 ForAllMembers 时忽略 IsSourceValueNull
我有 AutoMapper 的最新 3.1.1 版本。由于某种原因,使用 ForAllMemebers 时的 IsSourceValueNull 似乎不起作用,或者我期待不同的结果:
这是我正在尝试做的一个例子。请不要评论与实体完全一样的 DTO。这只是我遇到的更复杂模型的一个例子。
映射代码如下所示:
我收到源值不能为空的错误。意思是,从数据库返回的联系人为空,这没关系,但 AutoMapper 没有运行 Cotnact 或 ContactId 的条件。在数据库中两者都可以为空。我不得不求助于检查 ForMember 块内的源是否为空。
c# - 从平面域对象映射到嵌套的 SOAP XML
我有一个从 wsdl 生成的 xml,它深深嵌套并包含很多字段。xml的结构形式为
我是从 wsdl 中按类生成的,但是手动映射这个字段真的很容易出错,我不确定这是否是最好的方法。请问这可能与自动映射器有关吗?
我已经在 automapper 中尝试了上述方法,但没有映射成功。关于如何映射这种对象以使其可维护 600 多个字段的任何想法在旁注中,我的域非常平坦。
automapper - 包含对象列表的从源到目标的 Automapper 映射
我必须使用自动映射器创建映射。
目的地是
人员类是
我正在尝试创建映射
但我不知道如何将 Firstname、Lastname 映射到对象 Person 数组。
c# - 使用 ValueResolver 映射到自定义集合类型的 Automapper 失败
我正在尝试映射一个包含通用集合的类,并希望将该类映射到另一个类,其中该集合是另一个自定义类型。但是,当我尝试进行映射时,我得到一个 AutomapperMapperException。我做了一个重现问题的简化测试项目:
当调用 Mapper.Map() 方法时,我得到以下异常,这表明它不知道如何从 FooCollection 映射到 IFooCollection:
内部异常说:
...所以最后我的问题是:我如何让 automapper 将集合映射到我的自定义集合类型?我可以使用 .AfterMap(..) 手动成功地进行转换,但我不确定这是这个问题的预期解决方案吗?
c# - AutoMapper 空源值和自定义类型转换器,映射失败?
将自定义类型转换器 (ITypeConverter) 与 AutoMapper 一起使用时,如果源值为 ,则似乎不会输入类型转换器代码null
,例如:
类型转换器看起来像:
在最后两种情况下,结果是:
0 - 不是有效的枚举值
无效的
从调试到测试,在这两种情况下,自定义 TypeConverter 永远不会受到影响,而且 AutoMapper 似乎在映射器中进行了一些初始检查以进行映射,而无需求助于 TypeConverter?
如果我指定一个空字符串 (""),则测试按预期工作。
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 字段。