问题标签 [automapper]

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 投票
2 回答
9957 浏览

c# - 属性名称不同时使用 Automapper

我们正在使用来自 Codeplex 的 AutoMapper,对我来说,目标对象具有以“字段”结尾的所有属性,即 cityField,而源对象只有城市。

我可以使用下面的代码来实现,但所有属性都只是后缀为“字段”,并且有 20 个属性。

有没有其他方法可以在映射时忽略“字段”字,这样它就可以在不使用 .ForMember() 20 次的情况下进行映射?

0 投票
1 回答
1313 浏览

arrays - 如何使用自动映射器将 x 类型的单个对象映射到 y 类型的对象数组

其中 defs 是 Def (Def[]) 的数组

如何映射?

0 投票
1 回答
6665 浏览

c# - 如何使用 AutoMapper 为特定映射映射空值?

我发现这个解决方案AutoMapper - 将目标字符串设置为 null 实际上使它成为 string.Empty

但它使用 Initialize 方法,因此所有映射行为都会随着应用程序发生变化:O

我只需要为特定的映射做这件事。

0 投票
2 回答
1738 浏览

c# - AutoMapper 转换器因空值而失败

注意:这个问题现在已经过时了,只适用于旧版本的 AutoMapper。此处提到的错误已得到修复。


问题:

我有一个 AutoMapper 转换器,它接受一个Nullable<bool>/bool?并返回一个string. 我将此全局应用于我的个人资料,它适用于truefalse不适用于null.

这是我的 AutoMapper 配置文件中的内容:

这是转换器类:

演示问题的示例

问题:

  1. 这是一个错误还是设计使然?
  2. 如果是设计使然,那么以这种方式工作的原因是什么?
  3. 你能推荐一个解决方法吗?
0 投票
5 回答
3344 浏览

automapper - 自动映射器和不变性

是否可以将 AutoMapper 与不可变类型一起使用?

例如,我的 Domain 类型是不可变的,我想将我的视图类型映射到它。

我相信这不是但只是希望得到证实。

此外,最好的做法是让您的域类型不可变,将视图类型映射到域类型时的最佳做法是什么?

0 投票
3 回答
2508 浏览

dependency-injection - 为通用接口和类对指定默认 Unity 类型映射

我们在代码库上使用基于构造函数的依赖注入、AutoMapperUnity

我们用通用接口包装了 AutoMapper...

还有一个实现这个接口的类......

这很好用,但这意味着对于我们在 AutoMapper 配置中定义的每个映射,我们需要执行一个额外的UnityContainer.RegisterType.

这些类型映射几乎总是以下形式

有什么方法可以告诉统一使用默认类型映射,该映射从使用相同的映射IMapper到每个映射?AutomaticMapperTSourceTDestination

0 投票
4 回答
24996 浏览

asp.net-mvc - 如何在 POST 操作中将视图模型映射回域模型?

在 Internet 上找到的每篇关于使用 ViewModels 和使用 Automapper 的文章都给出了“Controller -> View”方向映射的指导方针。您将域模型与所有选择列表一起放入一个专门的 ViewModel 并将其传递给视图。这很清楚也很好。
视图有一个表单,最终我们进入了 POST 操作。这里所有的模型绑定器连同[显然] 另一个视图模型一起出现,该视图模型[显然] 与原始视图模型相关,至少在命名约定部分是为了绑定和验证。

你如何将它映射到你的领域模型?

让它成为一个插入动作,我们可以使用相同的 Automapper。但是,如果它是一个更新操作呢?我们必须从存储库中检索我们的域实体,根据 ViewModel 中的值更新它的属性并保存到存储库。

附录 1(2010 年 2 月 9 日):有时,分配模型的属性是不够的。应该根据 View Model 的值对 Domain Model 采取一些行动。即,应该在域模型上调用一些方法。可能应该有一种应用程序服务层位于控制器和域之间,以便处理视图模型......


如何组织此代码以及将其放置在何处以实现以下目标?

  • 保持控制器薄
  • 荣誉SoC实践
  • 遵循领域驱动设计原则
  • 干燥
  • 未完待续 ...
0 投票
2 回答
12137 浏览

linq-to-sql - AutoMapper 是否支持 Linq?

我对具有延迟加载功能的 Linq to SQL 非常感兴趣。在我的项目中,我使用 AutoMapper 将 DB 模型映射到域模型(从DB_RoleInfoDO_RoleInfo)。在我的存储库代码中如下:

SelectAll方法运行良好,但是当我调用时SelectByKey,出现错误:

方法“RealMVC.Data.DO_RoleInfo MapDB_RoleInfo,DO_RoleInfo”无法转换为 SQL。

是不是 Automapper 不完全支持 Linq?

我尝试了下面的手动映射代码,而不是 Automapper:

这种方法按我想要的方式工作。

0 投票
5 回答
6127 浏览

asp.net-mvc - ASP.net MVC: Creating SelectList in the view or action?

I'm just wondering where people are creating their SelectList - in the action or the view.

I have seen examples of both and the one that makes the most sense to me is doing it in the action and have the view model have a property of type SelectList.

On the other hand, I have seen examples where people have the view model have a property of SelectList and the SelectList is populated within the view model (either in the constructor or via lazy loading). I like this idea as it means there is less code in my actions...

In short I was just wondering what people are doing atm.

Cheers Anthony

0 投票
1 回答
1645 浏览

c# - AutoMapper - 添加自定义格式化程序

我正在使用 AutoMapper 1.0 RTW 并添加了几个自定义格式化程序:

目标类型都是字符串,并且格式化程序单独工作。但是把它们放在一起,只有第一个格式化程序被调用。在这种情况下,“AlertTypeFormatter”。

有任何想法吗?