2016年11月6日日曜日

.NET 例外「Cannot drop database. ’データベース名’ because it is currently in use」

ASP.NET MVC5のお勉強中です。
サンプルに従って順次実行していってるのですが、

デバッグ実行して、ローカルDBからデータをViewに表示する

デバッグ停止

サーバーエクスプローラーでDBの内容を確認する。

再度デバッグ実行して、Viewを表示すると例外が発生して表示できません。

例外の内容は
Cannot drop database. ’データベース名’ because it is currently in use
データベースが使用中で削除できないとのことです。

サーバーエクスプローラーでDBの内容を確認すると
データベースに接続中になり、アイコンが緑のコンセントマークになります。

データベースを右クリックメニューから「切断」して実行すると、アイコンが×に変わります。

データベースを切断してから実行すると、例外が出ずに実行できました。

サンプルでは
DropCreateDatabaseAlwaysやDropCreateDatebaseIfModelChangesを使用してデータベースに初期データを作成しているので、
データベースに接続したままだと、データベースが削除できないヨと怒られたんですね。

1 件のコメント:

b a さんのコメント...

まったく同じ所でつまずいていたので助かりました。
おそらく同じ教本ですねw