C# EF核心问题分组,重复行

C# EF核心问题分组,重复行,c#,linq,entity-framework-core,C#,Linq,Entity Framework Core,问题是,当该方法运行时,它会为CariHareket表创建行,而不管有多少行表链接到Kontrat 我无法分组,因为EF Core不支持它(EF Core v3.1.9) CariHareket和Kontrat车型类别: public class CariHareket { [Key] public int ID { get; set; } [ForeignKey(nameof(CariID))] public virtual Cariler Cari { ge

问题是,当该方法运行时,它会为
CariHareket
表创建行,而不管有多少行表链接到
Kontrat

我无法分组,因为EF Core不支持它(EF Core v3.1.9)

CariHareket
Kontrat
车型类别:

public class CariHareket
{
    [Key]
    public int ID { get; set; } 
    [ForeignKey(nameof(CariID))]
    public virtual Cariler Cari { get; set; }
    public int? CariID { get; set; }
    [ForeignKey(nameof(KontratID))]
    public virtual KontratUst Kontrat { get; set; }
    public int? KontratID { get; set; }
    [ForeignKey(nameof(HareketCariID))]
    public virtual Cariler HareketCari { get; set; }
    public int? HareketCariID { get; set; }
    [ForeignKey(nameof(HedefHareketCariVirmanID))]
    public virtual Cariler HedefHareketCariVirman { get; set; }
    public int? HedefHareketCariVirmanID { get; set; }
    ...
}

public class Kontrat 
{
    ...
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratMasraflarNotlar> KontratMasraflarNotlar { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratKalem> KontratKalemler { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratTarihBaglantilar> KontratTarihBaglantilar { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratKasa> KontratKasa { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratKonteyner> KontratKonteyner { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratTurkceFaturaKalem> FaturaTalimativeTurkceFatura { get; set; }
}
public-class-CariHareket
{
[关键]
公共int ID{get;set;}
[ForeignKey(姓名(CariID))]
公共虚拟Cariler Cari{get;set;}
公共int?carid{get;set;}
[ForeignKey(姓名(kontrad))]
公共虚拟KontratUst Kontrat{get;set;}
公共int?KontratID{get;set;}
[ForeignKey(姓名(HareketCariID))]
公共虚拟Cariler HareketCari{get;set;}
公共int?HareketCariID{get;set;}
[外国人(姓名(HedefHareketCariVirmanID))]
公共虚拟Cariler HedefHareketCariVirman{get;set;}
public int?HedefHareketCariVirmanID{get;set;}
...
}
公共级康塔特
{
...
[逆属性(“Kontrat”)]
公共虚拟绑定列表KontratMasraflarNotlar{get;set;}
[逆属性(“Kontrat”)]
公共虚拟绑定列表KontratKalemler{get;set;}
[逆属性(“Kontrat”)]
公共虚拟绑定列表KontratTarihBaglantilar{get;set;}
[逆属性(“Kontrat”)]
公共虚拟绑定列表KontratKasa{get;set;}
[逆属性(“Kontrat”)]
公共虚拟绑定列表KontratKonteyner{get;set;}
[逆属性(“Kontrat”)]
公共虚拟绑定列表FaturaTalimativeTurkceFatura{get;set;}
}

我没有看到group by查询。因为Ef Core 3不允许按@SvyatoslavDanylivWhat进行分组。如果您没有指定如何分组-没有回答。EF在分组方面有局限性,有时更好地进行客户端分组。您能重新表述问题或给出示例吗?我修复了安装EntityFrameoworkCore.Relational软件包的问题,经过2天的研究,这不是最好的解决方案,但比以前更好。
public class CariHareket
{
    [Key]
    public int ID { get; set; } 
    [ForeignKey(nameof(CariID))]
    public virtual Cariler Cari { get; set; }
    public int? CariID { get; set; }
    [ForeignKey(nameof(KontratID))]
    public virtual KontratUst Kontrat { get; set; }
    public int? KontratID { get; set; }
    [ForeignKey(nameof(HareketCariID))]
    public virtual Cariler HareketCari { get; set; }
    public int? HareketCariID { get; set; }
    [ForeignKey(nameof(HedefHareketCariVirmanID))]
    public virtual Cariler HedefHareketCariVirman { get; set; }
    public int? HedefHareketCariVirmanID { get; set; }
    ...
}

public class Kontrat 
{
    ...
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratMasraflarNotlar> KontratMasraflarNotlar { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratKalem> KontratKalemler { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratTarihBaglantilar> KontratTarihBaglantilar { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratKasa> KontratKasa { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratKonteyner> KontratKonteyner { get; set; }
    [InverseProperty("Kontrat")]
    public virtual BindingList<KontratTurkceFaturaKalem> FaturaTalimativeTurkceFatura { get; set; }
}