私は現在、ソフトウェア エンジニアリング クラスの ASP.Net MVC プロジェクトに取り組んでいます。私の目標は、小さなオンライン ゲーム レンタル システムを作成することです。現在、映画、ゲーム、登録者の 3 つのテーブルがあります。LINQ-to-SQL を使用して、これらの各テーブルをモデルのクラスとして定義しています。これまで映画とゲームのモデルを作成してきましたが、登録者モデルを作成するときにやりたいことは、登録者と映画とゲームの関係を作成することです。これまでに試したことは、ID (Registrant テーブルの主キー) と映画とゲームの両方の登録者 ID フィールドの間に外部キーを定義することです。私が気付いたのは、登録者のインスタンスを削除すると、関連する映画やゲームが他のテーブルから削除されるということです。私は何を
要約すれば:
私がこれまでに持っているもの:
- 3 つのテーブル: 登録者、映画、ゲーム。
- 映画やゲームのインベントリの LINQ-to-SQL モデル。
私がセットアップしようとしているもの:
- 登録者が映画および/またはゲームをレンタル/返却するモデル。ゲームがレンタル/返却されると、ステータスを示すためにインベントリ内のアイテムの横にフラグが配置されます。
質問:
レンタルした映画/ゲームをモデル化するために個別のテーブルを追加すると、在庫モデルで定義されたアイテムが削除されなくなりますか?? つまり、顧客がレンタルした映画を返品すると、rentedMovie インスタンスは削除されますが、映画インベントリで参照されている映画は削除されません。
他のテーブルの関連するエントリが変更されるたびに、エントリが削除されるのではなく、関連するエントリにステータスフラグが設定されている関連するテーブルのようなものはありますか?? つまり、顧客がレンタルした映画を返却すると、rentedMovie インスタンスが参照する映画にレンタル可能であることを示すフラグを設定し、rentedMovie インスタンスは削除されます。
