我有一个在Code-First中定义的表,如下所示;
public class Rule
{
[Key]
public Guid Id { get; private set; }
public int RuleId { get; private set; }
public int Version { get; private set; }
// Some other properties that aren't relevant
public virtual List<Rule> OtherVersions { get; private set; }
}
我希望OtherVersions
是一个导航属性,因此如果我有一个Rule
为1且RuleId
为1的Version
,{{1 }}将返回所有其他OtherVersions
实例,这些实例的Rule
也为1,但没有的RuleId
为1。
例如:
Version
很明显,我可以通过其他方式来做到这一点,但这意味着向现有查询中添加大量代码(即GetById,GetByName,Search等),如果可能的话,我不希望这样做
我怀疑我需要在| Id | RuleId | Version |
|---------|---------|---------|
| <guid1> | 1 | 1 |
| <guid2> | 1 | 2 |
| <guid3> | 2 | 1 |
OnModelCreating
但是我不太清楚正确的语法。在Google看来,我也看不出与我要找的结果类似的结果。