Automapper,用于从外部API返回的Id映射对象

时间:2017-11-23 16:38:27

标签: c# asp.net asp.net-mvc automapper

我有两个类,一个db实体和一个dto;

facet normal 1 0 0
   outer loop
      vertex -1 1 1
      vertex 1 -1 1
      vertex 1 1 -1
   endloop
endfacet

在这种情况下,部门不存储在本地数据库中,而是从外部api服务调用;

public class Employee
{
    public string Name { get; set; }
    public int DepartmentId { get; set; }
}

public class EmployeeDto
{
    public string Name { get; set; }
    public DepartmentDto DepartmentDto { get; set; }
}

所以我想做的是,从员工映射EmployeeDto时;

// DepartmentApiWrapper.cs
public class DepartmentApiWrapper : IDepartmentApiWrapper
{
    public async Task<Department> GetDepartment(string id)
        // logic here to call from external api and return department

        return department;
    }
}

当这个地图出现时,让它使用员工中的Id来调用DepartmentApiWrapper来获取部门,然后将该部门映射到DepartmentDto并将其分配给EmployeeDto。

部门信息来自共享存储库,无法购买到本地数据库,必须从外部API调用。

我没有使用自动播放器,也不知道从哪里开始,我甚至无法判断它是否可以完成。我知道我们正在使用静态映射器 - 一些线索建议使用实例映射器,尽管我无法弄清楚如何实现它。

任何帮助将不胜感激,谢谢你

0 个答案:

没有答案