我正在设计一个数据库来保存办公设备的库存,但在许多情况下,一个房间将包含多个相同项目,例如一个有 3 个相同电视屏幕的会议室。存储序列号等并不重要;只有数量很重要。
我想避免一遍又一遍地重新输入相同的信息(电视、等离子、1920x1080、50" 等),所以我想简单地拥有一个电视表,其中包含每个模型,然后将这些条目链接到 Rooms 表中的特定条目,对于该项目的每个实例一次。我最终得到这样的结果:
public class Television
{
public int ID { get; set; }
// ...
// keep track of rooms containing this model
public virtual ICollection<Room> Rooms { get; set; }
}
public class Room
{
public int ID { get; set; }
// ...
public virtual ICollection<Television> Televisions { get; set; }
}
问题是,使用此设置,您实际上只能将 TV 表的每一行链接到 Rooms 表的一行一次,而我想将其链接一次,例如 3 次。实现这一目标的最佳方法是什么?