问题标签 [automapper-2]

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 投票
0 回答
142 浏览

razor - 用户未处理 AutoMapperMappingExtensions

我正在开发一个应用程序,它涉及 MVC4 中带有图像和文本的下拉列表。例如,显示带有国家名称的图像(国家国旗)。我用过 AutoMapper、IEnumerable。它说错误,因为AutoMapperMappingExtensions 未被用户处理

描述为

Controller中发生的错误 为

索引.cshtml

在cshtml错误描述为

0 投票
1 回答
509 浏览

c# - Automapper:水合int?根据条件

我有以下代码:

int?如果值为nullunless ,它基本上allowOverride = true会水合一个值,其中它将在不检查字段值的情况下水合该值。

我将如何在 Automapper 中执行此操作?

我知道您可以使用 .Condition() ,如下所示:

Automapper 的条件被忽略

但我不知道如何:

  1. 应用基于的逻辑,int?无需一一定义。
  2. allowOverride将布尔值包含到 Mapper。
0 投票
0 回答
143 浏览

c# - AutoMapper 和和解?

如何使用自动映射器协调列表?

例如给定一个类

还有一堂课

为了这个问题(我的实际要求有点不同)。我需要将 SomeAggregate 的一个实例映射到它的另一个实例。我想使用 AutoMapper,但我需要自定义EntityEnumeration填充方式。

这就是我想要实现的目标:

* MISSING LOGIC *需要替换为检查以下内容的代码:

  1. 如果为空,则复制所有 RHS
  2. 如果不为null,则检查LHS 是否有相同的成员Id,如果没有则添加RHS 中的成员。
  3. 如果 LHS 具有相同的Id,只需更新Name匹配实体的属性。
  4. 如果 LHS 具有IdRHS 中不存在的 ,请Id从 LHS 中删除 。

我什至不知道从哪里开始,因为我无法在同一个 lambda 委托中获取 LHS 和 RHS 的实例来进行这种比较。至少没有一个内置选项似乎让我做这种映射。我认为这应该是一个相当常见的用例。

请帮忙。

0 投票
1 回答
1070 浏览

flatten - Automapper 使用派生类型属性展平

我正在使用自动映射器来展平来自 WS 的对象。简化模型如下:

使用 automapper 我试图将其展平为:

与下一个映射:

上述映射不会映射 ProductRate。 Atm 我刚刚使用了 AfterMap:

这工作得很好,但我想如果我可以重用自动映射器展平的可能性(即按名称匹配),我不需要在很多地方应用后映射。

注意:我无法更改 WS,这只是对象层次结构的一小部分。

建议表示赞赏。

0 投票
1 回答
1123 浏览

c# - 如何告诉 Automapper 检查所有源属性是否都有目标属性

我们有两个班级:

和映射配置

Automapper 是否有可能自动检查所有源属性是否具有相应的目标属性,在我的示例中抛出异常,通知我们Foo.C属性未映射到任何东西。Mapper.AssertConfigurationIsValid()仅检查相反的方式-所有目标属性都具有源属性,因此在我的情况下没有帮助。

0 投票
4 回答
4959 浏览

c# - Automapper - 忽略基类的属性

我很难忽略从基类继承的类的属性。

这里唯一要注意的是基类的属性是String,派生类的属性是Int32。

无论如何,当我尝试将 FormViewModel 的实例映射到 Entity 时,Entity 类上基于 String 的 Id 属性始终设置为 FormViewModel 中的 Int 值,即使我已指定忽略它。

我在 FormViewModel 和 Entity 上为 Id 使用不同类型的原因是我在 Web 应用程序中使用 RavenDB,并且可以通过字符串或 int Id 加载对象。在客户端,首选 Int Id,因为标准 Raven 基于字符串的 ID 在生成链接时效果不佳。

谁能告诉我这里有什么问题?

0 投票
0 回答
288 浏览

mapping - 构造使用受保护的构造函数

默认情况下,Automapper 能够使用受保护的构造函数进行映射。但是,它只取具有最合适参数的那个并使用它。我如何告诉 Automapper 使用哪个受保护的构造函数?

0 投票
1 回答
2388 浏览

c# - 带有 ValueFormatter 的 AutoMapper

我正在学习如何使用 AutoMapper,但在使用 ValueFormatter 时遇到了问题。

这是控制台中的简单示例,我无法将它与 NameFormatter 一起使用:

我在这里想念什么?AutoMapper 是 2.2.1 版

0 投票
4 回答
60394 浏览

c# - 如何在 AutoMapper 中配置条件映射?

假设我有以下实体(类)

现在我想配置自动映射,如果 Value1 以“A”开头,则将 Value1 映射到 Value,否则我想将 Value2 映射到 Value。

这是我到目前为止所拥有的:

然而,我仍然无法理解的部分是如何告诉 AutoMapper在早期条件失败时采取行动。s.Value2

在我看来,API 的设计并不像它可能的那样好……但可能是我缺乏知识造成了阻碍。

0 投票
1 回答
103 浏览

c# - AutoMapper 无损列表对账?

我有一个关于目标对象的列表,我想与源进行协调。

该列表已经创建,我只想让 AutoMapper 从此列表中添加/更新/删除项目,任何时候都不应将该列表设置为新的对象引用。我怎样才能做到这一点?

这样做的原因是目标对象是 ORM 生成的代码,无论出于何种原因,它都没有设置器。

目标如下所示: