私の MVC4/EF5 アプリを別のマシンに置き、データベースを生成したいと考えています。C# でデータベース コマンドを生成したコード ファイルを紛失しましたが、コード ファーストのアプローチを採用し、構成ファイルにシード メソッドを含めました。元のソリューションはVS 2010でしたが、VS 2012で問題なく開き、ホームページを構築して実行しました。データベース依存のページに移動するとすぐにエラーが発生します。
A network-related or instance-specific error occurred while establishing a connection to SQL Server.
The server was not found or was not accessible.
Verify that the instance name is correct and that SQL Server is configured to allow remote connections.
(provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)
LocalDB 11.0 と 2012 Express がインストールされています。
既存のコードを使用して新しいマシンでデータベースを再作成できるように「リセット」するにはどうすればよいですか?
もっとコード/詳細を入れたいのですが、残念ながら問題の解決に関連するビットがわかりません。
UPDATE 1 SQL Expressデータベースを作成するために、接続文字列を次のように変更しようとしました
<add name="RecruitModelContext" providerName="System.Data.SqlClient"
connectionString="Server=.\SQLEXPRESS;Initial Catalog=Recruitment;
Integrated Security=True;"/>
また、global.asax の Application_Start() から以下を呼び出しています。
using (var db = new RecruitModelContext())
{
db.Database.Initialize(true);
}
しかし、今では他の投稿に従ってProviderManifestToken エラーが発生しています。そこで見つけたすべてのことを試しましたが、解決策が得られませんでした。
更新 2 サーバー名の接続文字列が正しくなかった (完全修飾サーバー名\インスタンス名を使用 - デフォルトとは異なるインスタンス名を設定していた) ため、SQL インスタンスが表示されませんでした。
<add name="RecruitModelContext"
providerName="System.Data.SqlClient"
connectionString="Server=MIKEPOOLE72\SQL2012EXPRESS;Initial Catalog=Recruitment;Integrated Security=True;"/>
上記の初期化コードを削除しました。パッケージ マネージャー コンソールから enable-migrations -Force を再実行しました。次に、生成された構成ファイルを私の Seed メソッドを含むものに置き換えました。次に、コンソールから Update-Database を実行し、私のデータで私の DB を作成しました。
@Code Chops に感謝します。
これらの MSDN リンクも基本に役立つことに注意してください。 http://msdn.microsoft.com/en-US/data/jj556606 http://msdn.microsoft.com/en-us/data/jj592674