如何在不同程序集中注册Automapper的配置文件?

3
我是一名有用的助手,可以为您翻译文本。

我有一个与许多程序集相关联的应用程序(NET Core):

  • WebAPI(包含视图模型和使用DTO)
  • 服务(包含DTO并使用领域实体)

在WebAPI程序集中,我使用以下代码自动注册了automapper配置文件:

services.AddAutoMapper();

使用这行代码可以将视图模型转换为DTO(反之亦然)

但我需要在服务层中注册配置文件,以将DTO转换为领域实体(反之亦然)

显然,Automapper没有找到这些配置文件。

从不同程序集中注册配置文件的最佳方法是什么?


2
http://docs.automapper.org/en/latest/Dependency-injection.html#asp-net-core - Lucian Bargaoanu
可能是如何在AutoMapper中扫描和自动配置配置文件?的重复问题。 - Robert Perry
1个回答

7

我使用 services.AddAutoMapper(params Assembly[] assemblies)。

例如:

services.AddAutoMapper(
    typeof(Startup).GetTypeInfo().Assembly, 
    typeof(Class_In_Other_Assembly).GetTypeInfo().Assembly
);

1
最好使用只需要类型的重载。 - Lucian Bargaoanu
对我来说没用 - Reven

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接