在 EF Core 3 和 ASP.Net MVC Core 中将 Mapster 映射代码放在哪里?

Where to put Mapster mapping code in EF Core 3 and ASP.Net MVC Core?

我刚刚开始使用 ASP.Net MVC 核心,我正在尝试了解它与 ASP、Net MVC 框架之间的一些区别。

我使用 Mapster 库来组织我的数据对象和视图模型之间的映射。在过去,我会用我的 DTO 创建一个映射配置文件来查看模型映射,然后在启动时调用它。在核心世界中是否有最佳实践方法来做到这一点?我假设在启动时会调用一些东西 class?

如有任何建议或示例,我们将不胜感激。

在 asp.net 核心中,您可以将映射代码放在启动 Configure 方法中

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
        TypeAdapterConfig<Employee, EmployeeViewModel>.NewConfig()
                        .Map(dest => dest.Name, src => src.FirstName + " " + src.LastName);
        app.UseHttpsRedirection();
        app.UseStaticFiles();

        app.UseRouting();

        app.UseAuthorization();

        app.UseEndpoints(endpoints =>
        {
            endpoints.MapControllerRoute(
                name: "default",
                pattern: "{controller=Home}/{action=Index}/{id?}");
        });
    }

参考https://www.codeproject.com/Articles/1249355/Mapster-Your-Next-Level-Object-to-Object-Mapping-T