2012-11-16 17 views
6

LocalDbを使用しているWinFormsアプリケーションがあります。もちろん、私の開発ボックスでは、これは正常に動作します。アプリケーションを別のボックスに展開すると、次のエラーメッセージが表示されます。名前付きLocalDbインスタンスをプログラムでインスタンス化できますか?

"SQL Serverへの接続時にネットワーク関連またはインスタンス固有のエラーが発生しました。

私はこの問題についてStackoverflowの記事の多くを読んだことがあります。ほとんどは接続文字列に関連しているようです。

私が抱えている問題の1つは、自分の開発ボックスで、名前付きLocalDbインスタンスを開始したことです。インストールターゲットでは、LocalDbインストールMSIを実行しています。

インストールされているインスタンスの場合、名前付きLocalDbインスタンスまたはデフォルトLocalDbインスタンスに接続する方法をプログラムでインスタンス化する方法はありますか?

名前付きLocalDbインスタンスをプログラムでインスタンス化することはできますか?

または(localdb)\ v11.0を使用してLocalDbデータベースを開くために使用できる接続文字列を作成できますか。

開発でもDbContextを使用しています。開発用ボックスでLocalDbとDbContextも正常に動作します。 DbContextとEFを使用すると、ターゲットボックスのLocalDb接続文字列に影響しますか?実際には2つの方法があります

答えて

4

:LocalDB APIから

  1. LocalDBCreateInstance機能、
  2. system.data.localdb/localdbinstances elementネイティブC/C++コード用とのPInvoke
  3. を通じて、アプリケーションのApp.configファイルで(.NETアプリケーションは、.NETが必要です4.0.2以降)
+0

Krztsztof - ありがとうございました! - これをサポートするために.Net 4.5をインストールに含める必要があります。 –

+0

app.configと一緒に使いたい場合は、.NET 4.0.2以降が必要です。 –

+0

ありがとうKrzysztof - ありがとうLocalDbのapp.configのサンプルを私に教えることができますか?この問題を解決したようですが、「AttachDbFilenameの無効なキー値」というエラーが発生しました –

関連する問題