问题标签 [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 投票
8 回答
53371 浏览

c# - 实体框架 + AutoMapper(实体到 DTO 和 DTO 到实体)

我在使用带有 AutoMapper 的 EF 时遇到了一些问题。=/

例如 :

我有 2 个相关实体(客户和订单),它们是 DTO 类:

p>

难道我做错了什么?

提前致谢 !

0 投票
19 回答
91835 浏览

.net - AutoMapper:“忽略其余部分”?

有没有办法告诉 AutoMapper 忽略除显式映射的属性之外的所有属性?

我有可能从外部更改的外部 DTO 类,我想避免明确指定要忽略的每个属性,因为添加新属性会在尝试将它们映射到我自己的对象时破坏功能(导致异常)。

0 投票
3 回答
1369 浏览

asp.net-mvc - AutoMapper 将域模型展平,但它会做相反的事情吗?如果不是,那是什么?

我一直在阅读 AutoMapper,因为我在这里回答了我之前的一个问题。

它说 AutoMapper 将复杂的域模型展平,但我需要一些相反的东西。我需要将我的视图模型(扁平域模型)连接到复杂的域模型,以便我可以快速将视图模型转换为域模型。

有没有类似于 AutoMapper 的东西,它采用视图模型并将其变成复杂的域模型?

0 投票
1 回答
1023 浏览

inversion-of-control - 如何在 Unity 中执行此操作?

Jimmy Bogart 有一篇关于将Automapper 与 IoC 容器一起使用的文章。他有一个使用 StructureMap 的示例,但我使用的是 Unity,我不确定如何正确使用 InjectionConstructor。

以下是文章中的代码,下面是我的糟糕尝试。谁能告诉我如何正确地做到这一点?

我的尝试:

0 投票
2 回答
3821 浏览

entity-framework - 如何解决 AutoMapper 错误?(堆栈溢出异常!)

我正在为以下课程使用AutoMapper + EF (Entities => POCO):

由于这个类与自身(父/子)有关系,AutoMapper 发疯了并抛出了 Stackoverflow 异常。你们有没有人遇到过这个问题?

0 投票
1 回答
1059 浏览

entity-framework - AutoMapper 映射 EF 关系好吗?

我正在使用 Entity Framework + AutoMapper 将 EntityObjects 转换为 POCO。

EF 中的关系使用EntityCollection<T>. POCO 中的关系使用ICollection<T>. 因为EntityCollection<T> : ICollection<T>,我认为它会非常容易施放。

但是,当 AutoMapper 尝试将 EFEntityCollection<T>转换为 POCO 时,它会尝试将其转换为 a IList,每次看到集合时都会这样做。由于EntityCollection未实现IList,因此我拥有的每个关系都没有按预期被 AutoMapper 映射,并且在尝试执行强制转换操作时会引发错误。

你们以前见过这个问题吗?

0 投票
2 回答
835 浏览

c# - 为什么 AutoMapper/EF 添加新项目而不是关系?

我的测试库中有这个测试:

它在做什么:

  • 将新用户插入基础;
  • 插入一个新的区域到基地,与用户关系;

实际发生的情况:

  • 新用户被插入;
  • 新区域被插入;
  • 再次插入新用户,有区域关系;

会发生什么?

更多信息:

  • Area 和 User 并不是真正的实体对象。我正在使用 AutoMapper 映射 DTO/Entity,我认为问题出在这个逻辑上。在某个时刻,我必须在 List 和 EntityCollection 之间进行映射。我创建了一个新的 EntityCollection 并使用 EntityCollection.Add 方法将转换为 UserEntity 的用户放入此集合中。我认为我应该使用 Attach 来不创建新实体,但是在没有正确绑定的情况下从 EntityCollection 调用此方法时不起作用。

你有什么比这更聪明的建议,或者解决这个问题的任何解决方法吗?我真的需要项目层(Web -> 业务 -> 数据 -> EF),出于模块化原因,我们无法在此处直接使用 EF 的 asp.net。

编辑

我放弃了使用 AutoMapper 来完成这项工作的想法 =/ 我没有很多实体,并且我需要在这个库中做的更改才能工作需要一些努力,这不是一件小事去做。最好自己做映射。

0 投票
3 回答
2117 浏览

asp.net-mvc - 当您的视图模型没有与域模型一样多的字段时,您如何忽略/保留 MVC 中的值?

我有一个使用 fluentNhibernate 和 Asp.net MVC 的网站。我有一个编辑视图,允许用户编辑该记录(对象)的 10 个属性中的 8 个。当您提交表单并绑定模型时,这两个不可编辑的字段会作为空字符串或默认的 DateTime 值返回到视图模型中,具体取决于属性的类型。

因为我还使用 AutoMapper 将我的视图模型映射到我的域实体,所以我不能只从数据库中加载我的对象的新副本并手动设置 2 个缺失的属性。保留那些我不想编辑的字段的最佳方法是什么?

一种可行的方法是将值保留在我的视图上隐藏的输入字段中。这行得通,但感觉很恶心。我感谢任何建议。我的 AutoMapper 中有没有办法配置这个所需的功能?

更新: 好的,所以我想我不是要忽略这些字段,而是要确保我不会保留 null 或空字符串值。忽略 AutoMapper 中的字段就是这样做的,当我尝试在保存到我的存储库之前将它们映射时,它们会被忽略并且为空。

0 投票
1 回答
2385 浏览

c# - 使用 Automapper (.net c#) 映射到不在 Src 中的变量以用于 linq2sql 类?

我最近一直在非常成功地使用 automapper,但是我遇到了一个小问题,将 Dest 映射到 Src 中不可用的变量....一个例子更好地解释了它.. 基本上我是根据 dest 映射到 src说明 .. 一切正常,但我现在需要将目的地映射到名为 reservationNumber 的变量,该变量是局部变量,不是 ORDER 的一部分……有人知道该怎么做吗?

我正在使用自动映射器从订单映射到预留,以便在 linq2sql 中使用,因为预留是我的 linq2sql 类。

是一个小例子,我将不胜感激。

0 投票
4 回答
1319 浏览

c# - DTO(linq2sql)和类对象之间的混淆!

我已经成功使用 linq2sql 和 linq DTO(由 linq2sql 创建的类)......

我很困惑,我有更新旧应用程序的任务,我可以看到我的 DTO 将按应有的方式使用.... 传输日期

我正在使用存储库模式,所以我通过 linq2sql dtos 将数据从存储库传递到服务......一旦我进入服务层(这基本上是我的业务逻辑),那么我需要传递类对象......

这些类对象基本上是 dtos 的镜像(或多或少) - 在某些地方有一些变化,但通常是相同的..

所以回到手头的问题!- 仅使用 dtos 将数据从存储库传输到服务层是这种好习惯吗……一旦进入服务层(业务逻辑),我应该将所有 dtos 映射到类对象计数器部件(当然使用自动映射器! !)

我的另一种选择是继续使用类对象之类的 DTOS,并将它们从方法传递到方法以及作为返回类型等,但我觉得这是不好的做法,我一直在想我应该应用哪种方法?

任何帮助都非常感谢

谢谢