EF Code First は私のローカルホストで動作します。ただし、1and1.com 共有 Windows ホスティングに公開すると問題が発生します。管理スタジオ経由で接続できないため、共有ホスティングはリモート クライアント接続をサポートしていないと思います。パッケージ マネージャー コンソールの更新データベースもリモート接続できません。
私の設定接続文字列は
<add name="DefaultConnection" connectionString="Data Source=dbXXXXXXXX.db.1and1.com;Initial Catalog=dbXXXXXXXX;User Id=username;Password=password;" providerName="System.Data.SqlClient" />
パッケージ マネージャー コンソールからローカル SQL をコピーして、myLittleAdmin と呼ばれる 1and1.com の Web インターフェイスを介してデータベースを再作成しました。
/Account/Register URL にアクセスすると、次のエラーが表示されます。
コンテキスト 'MyCustomDb' に対して移行が有効になっていますが、データベースが存在しないか、マップされたテーブルが含まれていません。移行を使用してデータベースとそのテーブルを作成します。たとえば、パッケージ マネージャー コンソールから「Update-Database」コマンドを実行します。
移行を無効にしようとしました Global.asax で、simplemembership プロバイダーをコメントアウトしました Initialize
WebSecurity.InitializeDatabaseConnection("DefaultConnection", "Users", "UserId", "UserName", autoCreateTables: true);
以前にメンバーシップ テーブルを作成していたので、接続が機能していることを意味します
エンティティ フレームワークがインストールされているソリューションの Db プロジェクトで、自動移行を false に設定しました
public Configuration()
{
AutomaticMigrationsEnabled = false;
}
FTP 経由で公開した後も、同じ「移行が有効になっています」というエラーが表示されます。エラーになりたくないだけです。どうすればこれを回避できますか?
Configuration.cs を含む Migration フォルダーを削除することはできますが、シード メソッドは機能しません。