私は新しいASP.NET MVC 4アプリケーションを作成しました。ただし、データベースファイルがまだ存在しない場合は、データベースファイルを最初に作成するようには見えません。私はApp_Dataフォルダから.mdfファイルのファイルを削除した場合、アプリケーションがデータベースにアクセスしようとしたとき、私は次の例外を取得:コードが最初にデータベースを作成しようとしたときの例外
System.Data.SqlClient.SqlException: Cannot attach the file '<path-to-db-file>.mdf' as database '<my-db-file-name>'.
私は、デバッガでのアプリでそれを実行した場合、私はそれを見ることができますLazyInitializer.EnsureInitializedを呼び出すときにInitializeSimpleMembershipAttribute :: OnActionExecutingメソッドで例外が発生しています。キャッチされた例外は次のとおりです。その後、私はそれの内部例外として、上記の最初の例外があります
[System.InvalidOperationException] {"The ASP.NET Simple Membership database could not be initialized. For more information, please see http://go.microsoft.com/fwlink/?LinkId=256588"} System.InvalidOperationException
:の内部例外で
[System.Reflection.TargetInvocationException] {"Exception has been thrown by the target of an invocation."} System.Reflection.TargetInvocationException
。
私が間違っていることは何ですか?
更新
私はちょうど新しいMVC4アプリでそれを試してみました。次のようにして複製することができます:
- VSウィザードでMVCアプリケーションを作成します。
- 初めてアプリケーションを実行し、ログインページに移動します(mdfファイルが生成されるようになります)。
- mdfファイルを削除し、ログインページに戻ります。例外がスローされます。
あなたはこれを理解できましたか? – Eonasdan
@Eonasdan、1年後、はい。私の答えを見てください。 – joelmdev