所以在 C# 中,当我一直在创建模型类和延迟加载东西时,我会做这样的事情:
public int? User_ID { get; set; }
public int? Dept_ID { get; set; }
然后在我的类(class)稍远一点的地方,我像这样进入我的虚拟世界:
public virtual User User {get; set;}
public virtual Department Dept {get; set;}
我如何在 Typescript 中执行此操作?是这样的吗?:
User_ID: number;
Dept_ID: number;
User: User;
Dept: Department;
我不认为接口(interface)是我想要/需要的...但是再次保护似乎也不正确。有些东西告诉我,我在这里缺少一个明显的答案。
最佳答案
以下同样适用于 TypeScript 和 JavaScript:
没有等价物。
根据定义,JavaScript 中的每个成员访问都受制于动态调度。这是因为从道德上讲,JavaScript 中的成员访问是哈希表中的键查找。
一个对象可以使用与它通过原型(prototype)链继承的成员相同的键来声明一个成员,从而隐藏继承的成员,但这与虚拟性不同,虚拟性是语言中不存在的概念.
关于javascript - TypeScript 中 c# 类虚拟成员的等价物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50067465/