オフィス機器の在庫を保持するためのデータベースを設計していますが、多くの場合、同じテレビ画面が 3 台ある会議室のように、部屋には複数の同じアイテムが含まれます。シリアル番号などを保存することは重要ではありません。量だけが重要です。
同じ情報 (TV、プラズマ、1920x1080、50 インチなど) を何度も再入力する必要がないようにしたいので、たとえば、それぞれの 1 つを含むテレビ テーブルを単純に使用したいと考えています。モデルを作成し、それらのエントリを Rooms テーブルの特定のエントリに、そのアイテムのインスタンスごとに 1 回リンクします。最終的には次のようになります。
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; }
}
問題は、このセットアップでは、Televisions テーブルの各行を Rooms テーブルの行に実際に 1 回しかリンクできないことです。たとえば、3 回リンクしたいと考えています。これを達成するための最良の方法は何ですか?