我正在尝试包含一个映射器来将 DTO 转换为域模型。这是示例存储库
class StudentRepository(service: StudentService, studentMapper: Mapper<StudentDTO, StudentModel>) {
fun fetchRecords(student: StudentModel): List<StudentModel> {
val result = service.getAllRecords(student.id) //Q1
return studentMapper.map(result)
}
}
映射器看起来像这样。
class StudentMapper : Mapper<StudentDTO, StudentModel> {
override fun map(dto: StudentDTO): StudentModel {
return StudentModel().apply { //transform each field }
}
}
我对这个实现有几个问题。
- 可以使用“Q1”中提到的模型对象吗?
- 在这里将模型对象映射到 DTO 的最佳方法是什么?