2012-04-25 8 views
0

私はEntLib(MVC3、EntLib5、SQL Server 2008)からsprocを呼び出そうとしています。 SQL Serverの既定のインスタンスを使用しており、SQL Server Management Studioから正常に接続できます。私はオンラインで見つけることができるすべてを試しましたが、何も私を接続させません。サービスはLocalSystemとして実行されています。ここでconnecction文字列です:ローカルローカルSQL Serverに接続できません

サーバー=は、データベース=テスト; Trusted_Connection = Trueの

は、ここで私が得ているエラーメッセージです:

確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しましたSQL Serverへの接続。サーバーが見つからなかったか、アクセスできませんでした。インスタンス名が正しいこと、およびSQL Serverがリモート接続を許可するように構成されていることを確認します。 (プロバイダー:名前付きパイププロバイダー、エラー:40 - SQL Serverへの接続を開けませんでした)

+0

今、「ローカル」にキャッシュされているようです。新しいサーバー名を強制的に読み取るにはどうすればよいですか? – birdus

+0

アプリケーションを閉じて再起動する必要があります。たぶんIISでアプリケーションプールをリサイクルしてください(IISを使用していて、組み込みのVS WebサーバーであるCassiniではなく)。 –

+0

再起動しても、キャッシュされた結果が返されているようです。私はあなたの提案されたサーバー名がEntLib経由でdbに接続できることを確認しました。これは、私が接続文字列を読み取ろうとしている方法です: ConfigurationManager.ConnectionStrings [Const.ConnectionString] .ConnectionString; – birdus

答えて

3

サーバーは「ローカル」ではなく「ローカルホスト」であり、SQL Server構成マネージャーでは「TCP/IP」および「名前付きパイプ」プロトコルを有効にする必要があります。また、信頼できる接続を使用する場合は、MVC3アプリケーションでWindows認証を有効にする必要があります。そうでない場合は、接続文字列にユーザー名とパスワードも指定します。

1

ローカルSQL Serverを使用している場合は、localhostまたは "。