如何通过实体框架在另一个模型中使用模型

本文关键字:模型 另一个 何通过 实体 框架 | 更新日期: 2023-09-27 18:30:21

这个想法是一个有家具的房间。非常简单的事情。这是 Furni 模型:

public class Furni
{
    public int ID { get; set; }
    public string Name { get; set; }
}
public class FurniDbContext : DbContext
{
    public DbSet<Furni> Furniture { get; set; }
}

当然,它工作正常。它像它应该的那样耦合到一个桌子上。现在我正在编写房间模型:

public class Room
{
    public int ID { get; set; }
    public Furni Furni { get; set; } <<<<< I have no idea how to couple it to FurniDbContext
}
public class RoomDbContext : DbContext
{
    public DbSet<Room> Rooms { get; set; }
}

有什么帮助吗?:)我希望我已经足够清楚了。

如何通过实体框架在另一个模型中使用模型

不需要为每个类单独设置DbContext。 它看起来像这样:

房间

public class Room
{
    public int ID { get; set; }
    public virtual Furni Furniture { get; set; } // virtual is for lazy loading
}

家具

public class Furni
{
    public int ID { get; set; }
    public string Name { get; set; }
    public virtual List<Room> Rooms { get; set; }  // if you want to have the relationship both ways
}

数据库上下文

public class AppDbContext : DbContext
{
    public DbSet<Furni> Furniture { get; set; }
    public DbSet<Room> Rooms { get; set; }
}

希望有帮助。