问题标签 [automapper-4]

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 投票
1 回答
612 浏览

c# - 如果不为空,则从十进制到布尔的自动映射器转换

我正在尝试将 bool 值转换为十进制 i automapper。如果我不检查空值,它工作正常。但我想检查空值,如果值为空,让值为空我的目的地,否则转换为十进制。下面是我绑的颂歌,但我得到一个错误.

0 投票
1 回答
568 浏览

c# - Automapper 没有忽略错误的属性

我们有一个复杂的对象 User ,其中包含一堆其他对象的列表。

当我们运行代码时,一些属性出错是完全可以接受的,因为与数据库的连接已经关闭,我们没有得到说下属。

在 AutoMapper 中,尝试将 User 类映射到另一个类时出现错误。

所以下属属性中的错误是;

AutoMapper 抛出的错误是;

然后在 InnerException;

我只需要 AutoMapper 来忽略那些错误的属性。

0 投票
0 回答
382 浏览

c# - Automapper 映射泛型类型

我有 2 类DataMainData需要映射

我尝试使用 automapper 将Data映射到MainData,如下所示:

它永远不会将映射值映射到目标变量。我得到的只是新的 MainData 对象。

0 投票
2 回答
150 浏览

asp.net - AutoMapper 奇怪的错误

我在 MVC 5 中使用 AutoMapper 4.1.1,然后使用它将实体从 EF6(具有任何虚拟且无延迟加载的纯 Poco)映射到 viewModel。我遇到了一个奇怪的问题,AutoMapper 可以正确翻译它,但在其他情况下却失败了。

获取人员的函数

控制器

所以,我不明白我做错了什么,因为 AutoMapper 能够在 viewmodel_2 的情况下正确映射,但在 viewModel_1 上抛出以下错误。

缺少类型映射配置或不支持的映射。

映射类型:Person -> PersonDetailViewModel MyProject.Dto.Person -> MyProject.Website.ViewModels.PersonDetailViewModel

目标路径:IEnumerable`1[0]

源值:MyProject.Dto.Person

0 投票
1 回答
1665 浏览

c# - 映射时 AutoMapper.Data 错误

我正在使用 automapper v4.1.1 和 automapper.data1.0.0.beta 1。我有控制台应用程序,我的映射代码如下所示:

我的数据库调用代码和映射看起来像

当我运行此代码时,我收到错误:

未处理的异常:System.InvalidCastException:指定的转换无效。在 DynamicCreate(IDataRecord ) 在 AutoMapper.Data.DataReaderMapper.d__10.MoveNext() 在 System.Linq.Enumerable.d__94 1.MoveNext() at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable1 源)

任何想法我做错了什么?

干杯

伊斯梅尔

0 投票
1 回答
440 浏览

c# - AutoMapper 4.2 not ignoring properties in profile

In my Web API controller method, before I map the UpdatePlaceDTO to PlaceMaster, I make a database call to populate the properties that are not covered by the Map but for some reason AutoMapper makes those properties null.

I've tried many of the solutions to IgnoreExistingMembers but none of them work.

This is what I have

This is the extension

I've used Modules to inject the mapper to my depedencies

I've seen in some thread that _mapper.Map actually creates a new object so how we make it to sort of "add-on" to the existing property values?

0 投票
2 回答
1174 浏览

c# - 注册 AutoMapper ValueResolvers?

我在 AutoMapper 4.2 上,我不知道为什么会出现这个错误

Autofac.Core.Registration.ComponentNotRegisteredException 请求的服务“Navigator.ItemManagement.Data.MappingProfiles.ReportPreferenceReportUserIdsResolver”尚未注册。为避免此异常,请注册组件以提供服务,使用 IsRegistered() 检查服务注册,或使用 ResolveOptional() 方法解决可选依赖项。

我的一个价值解析器收到此错误

我已经在我的 Autofac 模块中注册了这个

更新 1

我尝试了 Lucian Bargaoanu 的建议并替换了

现在我得到的错误是

System.ObjectDisposedException

此解析操作已结束。使用 lambda 注册组件时,无法存储 lambda 的 IComponentContext 'c' 参数。相反,要么从“c”再次解析 IComponentContext,要么解析基于 Func<> 的工厂以从中创建后续组件。

映射类型:ReportPreference -> IList 1 Navigator.ItemManagement.Core.ItemAggregate.ReportPreference -> System.Collections.Generic.IList1[[System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

目标路径:ReportJobSummaryDto.Reports.Reports.Reports0[0].ReportUserIds0[0]

源值:Navigator.ItemManagement.Core.ItemAggregate.ReportPreference ---> AutoMapper.AutoMapperMappingException:

映射类型:ReportPreference -> IList 1 Navigator.ItemManagement.Core.ItemAggregate.ReportPreference -> System.Collections.Generic.IList1[[System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

目标路径:ReportJobSummaryDto.Reports.Reports.Reports0[0].ReportUserIds0[0]

0 投票
0 回答
304 浏览

c# - 映射列表时的 Automapper 异常处理

我有两个列表,SRCList 和 DESTList。

SRCList 对象有 6 条记录。

我正在使用 automapper 来映射这两个列表。

映射时,automapper 在映射 6 条记录中的第 4 条记录时遇到任何问题,我得到 AutoMapperMappingException。

我可以跳过导致错误的记录的映射并继续映射其他记录吗?因此,在上面的示例中,DESTList 将有 5 条记录,跳过第 4 条。

0 投票
0 回答
85 浏览

c# - 带有“new”修饰符的 AutoMapper 继承

我正在将我的项目从 AutoMapper 版本 4.2.1 更新到 6,在新版本中,我得到了一个意外的行为。

课程

映射器配置

版本:4.2.1

如果我执行以下地图:

“opp.DealerOpportunity.BranchCode”的属性值为:00168

从版本 5.0.2 到 6.2.2

在这些版本中,相同属性的值是:null

如何更新 AutoMapper 以获得与 4.2.1 版相同的结果,而无需在映射配置中添加“ForMember”?不幸的是,我有很多此类模式的案例。

0 投票
0 回答
405 浏览

c# - 如何让 AutoMapper 自动生成此代码?

我是使用 Automapper 的新手,我搜索了很多正确答案,但似乎我无法正确理解它,所以:

我有这段代码

所以我想做的是我的UserDto班级有这个属性

AccountDto Account

两者都StudentDto继承TeacherDto自它,所以我想让 automapper 对其进行自我自动映射,如果它来自StudentDtoTeacherDtoAccount

这是课程

有简单的解决方案吗?