问题标签 [automapper-7]

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 回答
441 浏览

asp.net-core-3.1 - 缺少类型映射配置或不支持的映射。尝试将数据分配给 DTO 对象时

我正在使用AutoMapper.Extensions.Microsoft.DependencyInjection. 我正在使用 Automapper NuGet 包:AutoMapper.Extensions.Microsoft.DependencyInjection(7.0.0) 用于 ASP.NET Core 3.1 应用程序。

这是我的域对象:文件ResourceGroup.cs

这是我的 DTO 对象:文件ResourceGroupDTO.cs

启动.cs

映射配置文件.cs

文件ResourceGroupService.cs

在调试上面的代码时,我得到以下错误:

0 投票
1 回答
545 浏览

c# - AutoMapper 9.0.0(非静态)给出缺少类型映射配置或不支持的映射错误

我有一个使用带有静态映射的 Automapper 7.0.1 的 ASP.Net Web API。我最近升级到没有静态映射的 Automapper 9.0.0。因此,我使用了推荐的方式,即使用我的依赖容器(Unity Container)将实例注册IMapperIConfigurationProviderSingletons。

AutoMapperConfig.GetMapperConfiguration()是一个静态方法,它返回一个包含所有映射的新配置。

Therafter,我已经解决并使用IMapper了许多注册的服务PerRequestLifetimeManager,例如:

我可以看到 Unity 正确解析了 Services 和 Mapper,但是当我调用时Map()使用:

它给了我一个 AutoMapperException 说

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

我尝试了很多事情,包括将 AutoMapper 对象注册为 PerRequest 依赖项,即使是使用静态类(没有 DI 容器)的单例,但无济于事。

我确信我的映射是正确的,因为它们在 v 7.0.1 中与静态 AutoMapper 一起使用。升级后我错过了什么?

0 投票
1 回答
109 浏览

automapper - 为什么 AutoMapper 会抛出错误 AutoMapperConfigurationException?

我有四个类 - 两个视图模型和两个实体:

PhoneNumberTypeViewModel:

电话号码视图模型:

电话号码类型:

电话号码:

我使用 AutoMapper 来映射类:

然后我尝试使用以下方法验证配置:

config2 上的验证会引发以下异常:

Config1 通过验证,为什么 Config2 会抛出这个错误?

0 投票
1 回答
77 浏览

c# - 通过 id 获取时,EF Core 和 Automapper 未获取所有数据

我在 ASP.NET CORE api 中使用 EF Core 和 Auto Mapper,但我有点难以理解为什么当我通过 ID 获取数据时没有获取所有数据。

当我调试并查看数据时,它都在变量中,但是当它到达自动映射器部分时,就像一些数据被忽略了。

如何获取具有相应 ID 的所有数据。

这是我的 GetAsset by Id 方法。

这是我使用自动映射器的映射

这是我的 AssetDTO

和我的资产模型

我缺少的数据是 CategoryName、ManufacturerName、ConditionName LocationName 以及连接到资产的所有资产文件

当我在邮递员中执行正常的获取请求时,我得到所有数据都没有问题。但是当通过 ID 获取时,上面的字段丢失了,我不知道为什么

任何指导将不胜感激

更新:

资产文件 DTO

资产文件.cs

0 投票
3 回答
81 浏览

c# - 如何映射与我正在映射的类类型相同的导航属性?

我正在尝试将一个类映射Function到另一个名为FunctionDTOusing的类AutoMapper。这些类看起来像这样:

映射非常适用于诸如 的属性MasterFunctionId,但MasterFunction始终为空,即使Function对象在该属性中有值也是如此。

对映射器的调用通过以下方式完成(PS 变量 config 被注入到类中):

我无法使用以下内容,因为我收到一条错误消息,可能是因为 Mapper 未初始化:

有什么方法可以配置映射以使其工作?我对上一段代码尝试了类似的解决方案,但我一定遗漏了一些东西。