我有一个遗留数据库,我希望通过一个全新的API公开。
我需要将模型的字段名称从遗留数据库映射到我的新模型类。
我希望以类型安全的方式执行此操作,而不是仅使用容易出错的字符串映射字典。
// The new model.
class Patient {
firstName: string
lastName: string
dateOfBirth: Date
}
var p: Patient;
legacyToNewModelMappings =
"First Name": p.firstName
"Family Name": p.familyName
"DOB": p.dateOfBirth
这很好,因为如果我在新模型中更改字段,重构将很容易,如果出现问题,我会在IDE中收到警报。
但是我需要能够在两个模型之间来回映射。使用引用意味着我无法从旧数据库映射到新数据库。
我在Node.js中使用TypeScript。
我应该看看其他任何方法吗?
答案 0 :(得分:1)
我试图理解你在这里要完成的事情,所以如果我错了,请纠正我。
您是否在一个模型上使用getter和setter来匹配两个数据库的字段名称属性?
class Patient {
public firstName: string;
public lastName: string;
public dateOfBirth: Date;
get "First Name" (): string {
return this.firstName;
}
get "Family Name" (): string {
return this.familyName;
}
get "DOB" (): Date {
return this.dateOfBirth;
}
set "First Name" (value: string) {
this.firstName = value;
}
set "Family Name" (value: string) {
this.familyName = value;
}
set "DOB" (value: Date) {
this.dateOfBirth = value;
}
}