ユーザーがログインして特定のアクションを実行できるようにするWebアプリケーションを作成しています。私はこれをたどったtutorial(簡単にするために、私が使った正確なデータベース設定については、「メンバーシップデータを保存するデータベースを生成する」を検索できます)。ASP.NET MVC - 'no such table':AspNetUsers
すべてが開発に正常に動作しますが、私はそれを展開し、新しいユーザーを登録しようとすると、それは私にエラーを与える:私は「DOTNET EFデータベースの更新」を実行する必要があるため
An unhandled exception has occurred: SQLite Error 1: 'no such table: AspNetUsers'.
はこれです展開では?もしそうなら、私はそれを避けることができると思いますが、データベースをセットアップして準備しておくだけです。このチュートリアルでは、 'dbContext.Database.Migrate();'を呼び出すことで半ば話しましたが、Configure()メソッドにはdbContextがありません...そのため、ギャップを埋める方法がわかりません。
投稿したいコードに関する情報がある場合は、投稿していただきます。前もって感謝します!
移行の生成と適用は、アプリケーションの機能ではありません。リリースの一部(ReadyRollなど)を使用する必要があります。あるいは、デプロイメント・プロシージャの一部としてスキーマ更新を手動で適用する必要があります。 –
@ChrisPrattレスポンスありがとう!それは厄介です、私はアプリケーションの中から簡単な解決策を望んでいました。私が望むものを得るためにドットネットコマンドを実行するスクリプト(チュートリアルのもののようなもの)をアプリケーションから呼び出すと、うまくいくでしょうか?このWebアプリケーションは、私たちの顧客の皆様に提供されます(プログラミングの経験はほとんどありません)ので、私はそれらにWebアプリケーションを渡すことができます。何かを設定する。 –
パッケージとして配布する場合は、「インストーラ」が必要です。それは完全に吹き飛ばされたGUIインストーラと同じくらい複雑なものでも、powershellスクリプトのような単純なものでもかまいません。エンドユーザーが自分でデータベースを作成/変更できる能力があると判断した場合、またはエンドユーザーがスクリプトを作成することができるとみなします。 –