c# - 从另一个表引用子表?
问题描述
所以我在EntityFramework 6中使用TPT(每个类型的表)来创建一个表层次结构,假设是这样的:
public class Model
{
public int Id { get; set; }
public int CommonProperty { get; set; }
}
public class ModelA: Model
{
public string PropertyA { get; set; }
}
public class ModelB: Model
{
public int PropertyB { get; set; }
}
现在,我需要从自身引用表 ModelA,以便它包含对相同类型实体的引用,如下所示:
public class ModelA: Model
{
public string PropertyA { get; set; }
public int ModelAId { get; set;
public ModelA ModelA;
}
现在,这个引用显然是指 Model 表而不是 ModelA,因为从技术上讲,这个引用没有它自己的 Id。
我怎样才能做到这一点?
我一直在考虑添加一个名为 ModelAId 的新内部 int 并参考那个,但我不知道是否有更好的解决方案。
解决方案
现在,这个引用显然是指 Model 表而不是 ModelA,因为从技术上讲,这个引用没有它自己的 Id。
您忘记了(至少根据您给定的示例代码)因为 ModelA 继承自 Model,它现在也有自己的 Id 和 CommonProperty 属性。
推荐阅读
- ios - 如何在 TableView 中填充 Firebase 数据库数据?
- html - 如何在 HTML5 中标记解释性文本?
- java - 如何在具有多个字符串的数组列表中搜索对象并返回 opbject?
- python - 无法从外部范围访问变量(Python)
- java - 如何编写一个函数来并行查找大于 N 的值
- javascript - “+=”的嵌套问题(javascript)
- c# - 使用 Dotmim 同步框架同步两个 SQL Server 数据库
- python - 在 Flask 中启动 App 之前无法初始化值
- javascript - 我怎样才能从标记到 javascript
- google-docs-api - Google docs api 插入分栏符