Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 实体框架复杂关系_C#_Sql Server_Entity Framework_Ef Code First_Code First - Fatal编程技术网

C# 实体框架复杂关系

C# 实体框架复杂关系,c#,sql-server,entity-framework,ef-code-first,code-first,C#,Sql Server,Entity Framework,Ef Code First,Code First,我有一个类A,它继承自类B,同时类A有许多B的实例。类B包含类A属性作为参考 我正在寻找使用EF Codefirst映射这种关系的最佳方法 A不是从B继承来的。它们有以下几个共同的属性: class ABCommon { //common properties here } class B : ABCommon { public virtual A A { get; set; } //this property makes everything crazy if A i

我有一个类A,它继承自类B,同时类A有许多B的实例。类B包含类A属性作为参考


我正在寻找使用EF Codefirst映射这种关系的最佳方法

A不是从B继承来的。它们有以下几个共同的属性:

class ABCommon
{
    //common properties here
}

class B : ABCommon
{
    public virtual A A { get; set; }
    //this property makes everything crazy if A inherits from B
}

public A : ABCommon
{
    public virtual ICollection<B> Bs { get; set; }
}
类ABCommon
{
//这里的公共属性
}
B类:普通
{
公共虚拟A{get;set;}
//如果A从B继承,这个属性会让一切变得疯狂
}
公共A:ABCommon
{
公共虚拟ICollection Bs{get;set;}
}

这只是a和B之间简单的一对多关系。

我很难想象这种关系。你的真实代码中的A和B是什么?我认为你应该考虑把B分成两类,因为我可以;I don’’我看不出使用这种关系的任何逻辑方法。你是否在考虑一个类别,子类别,一种场景,其中子类别是类别的一个实例,而类别可以有许多子类别?