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

automapper - Automapper 3.0 - 此平台不支持此类型 IMapperRegistry

我更新了我的项目以使用Automapper 3.0.0,现在我的 TFS 构建没有成功。错误如下:

...System.PlatformNotSupportedException:System.PlatformNotSupportedException:此平台IMapperRegistry不支持此类型。

有没有人可以帮我解决这个问题。同时,我将恢复到以前的版本,因为那个版本似乎工作正常。

0 投票
4 回答
6539 浏览

.net - 为什么 AutoMapper v3 不能工作,因为它正在寻找 v2.2.1.0?

我刚刚通过 nuGet 在一个新项目上安装了 AutoMapper,但是当我运行代码时,出现以下错误:

无法加载文件或程序集“AutoMapper,Version=2.2.1.0,Culture=neutral,PublicKeyToken=be96cd2c38ef1005”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)

为什么它在寻找 Version=2.2.1.0,我该怎么办?恢复到那个版本?

0 投票
0 回答
712 浏览

c#-4.0 - 从命令行运行 MSTest 时出现 Automapper 错误

我在我的项目中使用 AutoMapper 3.0.0 (.net40),并且我有 MS Test 单元测试。当我直接从 Visual Studio 2012 运行测试时,我的所有测试都运行良好。但是当我使用 MSTest.exe 从命令行运行相同的单元测试时,测试失败并出现以下错误

测试方法 Expressions.Tests.MappingTests.TestEvaluateFlatExpression 抛出异常:System.PlatformNotSupportedException:此平台不支持此类型 IMapperRegistry

这是来自失败的单元测试的堆栈跟踪。

所有项目都是 .net 4.0,我正在使用 VS 2012 附带的 MSTest.exe。我正在使用

是否有任何其他参数需要传递给我缺少的 MSTest?

0 投票
1 回答
1413 浏览

c# - CreateMap 上抛出异常

嗨,我正在尝试将 AutoMapper 添加到我的应用程序中,但我似乎在 th eintegrationg 中遇到了一些问题。这是我到目前为止所拥有的。

为了不创建对 Automapper 的直接依赖,我为其最基本的功能创建了一个简单的映射:

我创建了一个配置文件:

并在我的 Global.Asax 中添加了一个调用:

我有这两个对象,我想创建一个映射:

在我的代码中,我放置了这一行用于测试目的:
var products = productCatalogService.GetProducts(); ProductDTO ceva = products.FirstOrDefault(); var productsDataContract = mapper.Map(ceva);

问题是,当我运行我的应用程序时,我在尝试 CreateMap 时立即在 Automapper 中遇到异常。这是类型初始化异常消息:

此平台不支持此类型 IDictionaryFactory

我究竟做错了什么?

0 投票
2 回答
1829 浏览

c# - 如何使用 AutoMapper 3 和实体框架将整数映射到字符串

我正在尝试使用 AutoMapper 3 将具有 Integer 属性的类投影到具有 String 属性的另一个类。

执行查询时,我得到以下异常:

System.NotSupportedException:LINQ to Entities 无法识别方法“System.String ToString()”方法,并且该方法无法转换为存储表达式。

以下是代码的相关部分:

查询看起来像:

问题:

有没有一种方法可以配置 LookupProfile 以进行正确的映射并仍然在 Linq To Entities 中工作?还是有另一种方法可以使投影与 Linq to Entities 一起工作?

0 投票
1 回答
396 浏览

c# - 将封装的属性映射到 IEnumerable

给定以下课程

和以下映射:

我可以映射FoosIEnumerable<Bar>

但是,如果我有一个看起来像这样的附加类:

我将如何设置映射以便FooContainer映射到IEnumerable<Bar>

编辑

好的,只是为了澄清这个问题 - 如果我有以下三个类:

如何为FooContainerto设置映射,IEnumerable<Bar>以便 FooContainer.Id映射到 eachBar.SourceIdFoo.Name映射到Bar.Name

0 投票
1 回答
4044 浏览

c# - 如何使用 AutoMapper 从可枚举(或数组)列表属性映射到列表?

我正在使用 AutoMapper 试图简化来自某些 REST API 响应的响应。我有一个带有名为 Messages 的数组属性的对象,我想将它映射到我的客户端应用程序中的列表<> 或数组。

我尝试了以下变化:

...但显然这些似乎都不起作用。理想情况下,我希望得到一个 SimplifiedMessage 列表,并且我很确定我错过了迭代 Messages[] 的正确语法。

0 投票
1 回答
842 浏览

c# - 使用 AutoMapper 进行单元测试,使用 DeploymentItem 属性不起作用 - PlatformNotSupportedException

我正在尝试将 AutoMapper 与使用 DeploymentItem 属性的单元测试一起使用,以便在运行时读取文件。

这是我的代码:

我在这一行遇到错误:

但是当我删除 DeploymentItem 属性时,测试就可以正常工作。

我已经从 AutoMapper 的创建者那里阅读了这篇文章,但似乎并没有解决这个问题。

异常详情如下:

谢谢!

0 投票
1 回答
792 浏览

c# - 是否可以使用 AutoMapper 自动映射除少数复杂属性之外的所有属性?

我有一些具有大量属性的对象。当我开始使用 AutoMapper 时,我试图只映射一些嵌套对象以了解它是如何工作的。我一直认为它会映射源和目的地具有相同名称的属性。然而,似乎一旦我有了一些 ForMember() 规则,它只会映射我有规则的属性。

有没有办法只指定一些规则,源对象和目标对象不同?还是我必须明确并映射每个属性?

0 投票
1 回答
1650 浏览

c# - 将具有数组属性的单个源映射到平面目标列表

我正在使用 .NET 4.5 和 Automapper 3.0

我有一个带有子对象数组作为属性的源对象:

我的目标对象是平的

我需要做的是将 Source 的单个实例映射到 Dest 的集合(IList,Dest[],无论哪种集合)。

也就是说,对于 Source 的单个实例

我需要返回 Dest 的 2 项集合

这可以用自动映射器完成吗?

我尝试了以下方法,但都不起作用(显然):