Visual Studio 2012 を使用して記述された C# コンソール アプリケーションがあります。アプリケーションでは、データベースへの Sql Server localdb 接続を使用して情報を保存しています。これは、Visual Studio がインストールされている複数のコンピューターで正常に動作しています。
大規模な Sql Server Express ではなく、Sql Server Express LocalDB のみをインストールする必要があるプログラムをデプロイしたいと考えています。しかし、アプリケーションがターゲット コンピューターで実行されていません。ターゲット コンピューターに Sql Server Express LocalDB 2014 をインストールしました。コマンド ラインを使用して、sqllocaldb を使用してコマンドを実行し、それがインストールされて実行されていることを確認できます。
C:\Users\someuser\Desktop\Debug>sqllocaldb v
Microsoft SQL Server 2014 (12.0.2000.8)`
ただし、同じターゲット コンピューターでアプリケーションを実行すると、次のエラーが発生します。
C:\Users\someuser\Desktop\Debug>Testing_Console
11:21:07,912 [1] INFO TestingConsole.Program - 現在のディレクトリは C:\Users\someuser\Desktop\Debug
です追加情報: (null)
未処理の例外: System.Data .SqlClient.SqlException: SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできませんでした。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。(プロバイダー: SQL ネットワーク インターフェイス、エラー: 50 - ローカル データベース ランタイム エラーが発生しました。自動インスタンスを作成できません。エラーの詳細については、Windows アプリケーション イベント ログを参照してください。
以下は、接続文字列を定義している app.config ファイルの冒頭です。LM ファイルへの直接ファイル パスを入力しようとしましたが、問題は解決しませんでした。ただし、プログラムは Visual Studio がインストールされているコンピューターの任意のディレクトリから動作するため、これは想定内のことでした。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<connectionStrings>
<add name="KomoLM_Console.Properties.Settings.LMConnectionString"
providerName="System.Data.SqlClient"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\LM.mdf;Integrated Security=True;MultipleActiveResultSets=True"
/>
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
問題が SQL Server Express LocalDB 2014 のみがインストールされていることに関連しているかどうかはわかりません。誰が私の問題が何であるかを教えてもらえますか?