C# .NET核心EF一对多/多对多

C# .NET核心EF一对多/多对多,c#,.net,entity-framework,C#,.net,Entity Framework,我有一个问题:我在这里看到过其他帖子,但它们似乎不起作用 我有一个userClass: public class UserClass { public int Id { get; set; } public int deskId { get; set; } public int departmentId { get; set; } public bool isManager { get; set; } public int managerId { ge

我有一个问题:我在这里看到过其他帖子,但它们似乎不起作用

我有一个
userClass

public class UserClass
{
    public int Id { get; set; }

    public int deskId { get; set; }

    public int departmentId { get; set; }
    public bool isManager { get; set; }
    public int managerId { get; set; }
  
    public string lastName { get; set; }
    public string emailAdress { get; set; }
    public string firstName { get; set; }

    public Desk desk { get; set; }
}
我的课桌看起来像

public class Desk
{
    public int deskId { get; set; }
    public int deskNumber { get; set; }
    public int floorNumber { get; set; }
    public bool isOffice { get; set; }
}
public DbSet<UserClass> UserClass { get; set; }
public DbSet<Desk> Desk { get; set; }
我有一个存储过程,我调用所有东西,但它返回的desk为null。实体框架似乎无法识别类
desk

这就是我的dbContext的样子

public class Desk
{
    public int deskId { get; set; }
    public int deskNumber { get; set; }
    public int floorNumber { get; set; }
    public bool isOffice { get; set; }
}
public DbSet<UserClass> UserClass { get; set; }
public DbSet<Desk> Desk { get; set; }
public DbSet UserClass{get;set;}
公共数据库集桌面{get;set;}
这是我的迁移

modelBuilder.Entity("UserService.Models.Desk", b =>
            {
                b.Property<int>("deskId")
                    .ValueGeneratedOnAdd()
                    .HasColumnType("int")
                    .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);

                b.Property<int>("deskNumber")
                    .HasColumnType("int");

                b.Property<int>("floorNumber")
                    .HasColumnType("int");

                b.Property<bool>("isOffice")
                    .HasColumnType("bit");

                b.HasKey("deskId");

                b.ToTable("Desk");
            });

        modelBuilder.Entity("UserService.Models.UserClass", b =>
            {
                b.Property<int>("Id")
                    .ValueGeneratedOnAdd()
                    .HasColumnType("int")
                    .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);

                b.Property<int>("departmentId")
                    .HasColumnType("int");

                b.Property<int?>("deskId")
                    .HasColumnType("int");

                b.Property<string>("emailAdress")
                    .HasColumnType("nvarchar(max)");

                b.Property<string>("firstName")
                    .HasColumnType("nvarchar(max)");

                b.Property<bool>("isManager")
                    .HasColumnType("bit");

                b.Property<string>("lastName")
                    .HasColumnType("nvarchar(max)");

                b.Property<int>("managerId")
                    .HasColumnType("int");

                b.HasKey("Id");

                b.HasIndex("departmentId");

                b.HasIndex("deskId");

                b.ToTable("UserClass");
            });

        modelBuilder.Entity("UserService.Models.UserClass", b =>
            {
                b.HasOne("UserService.Models.Desk", "desk")
                    .WithMany()
                    .HasForeignKey("deskId");
            });
modelBuilder.Entity(“UserService.Models.Desk”,b=>
{
b、 属性(“deskId”)
.ValueGeneratedOnAdd()
.HasColumnType(“int”)
.HasAnnotation(“SqlServer:ValueGenerationStrategy”,SqlServerValueGenerationStrategy.IdentityColumn);
b、 属性(“桌面编号”)
.HasColumnType(“int”);
b、 物业(“楼层编号”)
.HasColumnType(“int”);
b、 财产(“等位”)
.HasColumnType(“bit”);
b、 HasKey(“deskId”);
b、 可折叠的桌子;
});
实体(“UserService.Models.UserClass”,b=>
{
b、 财产(“Id”)
.ValueGeneratedOnAdd()
.HasColumnType(“int”)
.HasAnnotation(“SqlServer:ValueGenerationStrategy”,SqlServerValueGenerationStrategy.IdentityColumn);
b、 财产(“部门ID”)
.HasColumnType(“int”);
b、 属性(“deskId”)
.HasColumnType(“int”);
b、 属性(“电子邮件地址”)
.HasColumnType(“nvarchar(max)”);
b、 财产(“名字”)
.HasColumnType(“nvarchar(max)”);
b、 财产(“isManager”)
.HasColumnType(“bit”);
b、 财产(“姓氏”)
.HasColumnType(“nvarchar(max)”);
b、 财产(“managerId”)
.HasColumnType(“int”);
b、 HasKey(“Id”);
b、 HasIndex(“部门ID”);
b、 HasIndex(“deskId”);
b、 ToTable(“用户类”);
});
实体(“UserService.Models.UserClass”,b=>
{
b、 HasOne(“UserService.Models.Desk”,“Desk”)
.有很多
.HasForeignKey(“deskId”);
});
我是否需要设置第三个“连接”表,正如我所看到的示例一样?或者我可以用其他方法解决这个问题吗

我不需要存储过程,但我也尝试了查询
userClass
表本身


M.B

您是否可以包括您的实际代码以及主DbContextConfiguration类,而不是迁移代码?存储过程返回什么?还显示调用存储过程的代码。但是请注意,存储过程是不可组合的,类似于
Include
的内容是不可能的。