2012-03-19 16 views
0

MVC3を使用してWebサイトを作成し、データベースをアタッチしている場合。 これらはすべてリンクされています。私は国のためのテーブル、州のテーブル、都市のテーブルを持っています。現在、たとえば国を削除すると、それに接続されている州と都市はデータベースに残っています。私はコントローラのリストでそれらを見ることはできませんが、例えば都市を作るときの状態を選択するときにドロップダウンに表示されます。これをどうやって解決するのですか?ASP.NET MVC3 SQLデータベース行削除の問題

ありがとうございました。

+3

これは非常に曖昧な質問です。コードとデータベースモデルを共有してください。国、都市、国の間に外来キーの制約がありますか?その場合は、外部キーにON DELETE CASCADEを使用することができます。 – danludwig

+0

これはhttp://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/creating-anentity-framework-data-model-for-an-asp-netで説明されています。 -mvc-application – RickAndMSFT

答えて

3

外部キーの関係を使用すると、スクリーンショットに示すようにON DELETE CASCADEに設定されます。こうすると、国を削除すると、国、都市などが自動的に削除されます。

enter image description here

または手動でループを通過すると、自分がその状態、その後、都市で始まり、その後、親の国にそれらを削除します。

ただし、外部キーを使用してください。

+2

ありがとう、私は外部キーを使用していたが、私はそのオプションを選択していないと思う! – Arcade

+1

+1その他私はmssqlがついにSetNullカスケードオプションを持っていることを決して実現しなかったので、最初にコードを使用してきました。私はしばらくANSI SQLにあったことを知って、いつそれがいつSQL Serverに来るのだろうと思った。 – danludwig

+0

これはhttp://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/creating-anentity-framework-data-model-for-an-asp-netで説明されています。 -mvc-application – RickAndMSFT

関連する問題