例如要一个用于 API 输入的 UserDTO ,除了 Group 这个根据外键关联的属性外都要 api 输入,正常的做法是复制一个 Model 出来把多余的删掉,然后还要写一个 Convert 方法把属性逐个复制以从 DTO 转换成 User Model ,可维护性很差,改一个属性要改 3 遍。
1
iold Mar 7, 2023 via iPhone
AutoMapper
|
2
tcp Mar 7, 2023 via iPhone
如果 Model 不复杂,可以用匿名对象
|
3
DTCPSS Mar 7, 2023
DTO 其实适合 record
|
4
jmjgeminix Mar 7, 2023
AutoMapper 或者 Mapster
|
5
oppoic Mar 7, 2023
就用 UserDTO ,Group 字段后端查询赋值
|
6
deali Mar 7, 2023
我用的也是 AutoMapper
|
7
thtznet Mar 7, 2023
Mapster 映射,但是我仍然觉得 JAVA 或者 C# 采用 class 做 DTO 的方式仍然不够优雅,class 的语法局限性,所以我现在尽可能使用 gRPC 来做接口,绕开 class 的 DTO 。
|
8
PerFectTime Mar 7, 2023
Mapster
|