インターネットで同様のトピックの記事と回答をたくさん読みましたが、問題の理由が見つかりませんでした。
同じマシン上の SQL Server Express に接続する .NET 4 Windows サービスがあります。本番環境で 1 回だけ、次のエラーが表示されました。
「サーバーとの接続は正常に確立されましたが、ログイン プロセス中にエラーが発生しました。(プロバイダー: 名前付きパイプ プロバイダー、エラー: 0 - パイプの反対側にプロセスがありません。)」.
名前付きパイプ プロトコルを使用している場合、このエラーが発生する理由は明らかです。これは、サーバーでそれらを有効にしていないためです。しかし、ここで私の質問は、名前付きパイププロトコルをここで使用できる理由は何ですか? 接続文字列では、" Data Source=.\SQLEXPRESS " を使用しました。msdn およびインターネット上の情報を念頭に置いて、「.」常に「共有メモリ プロトコル」を使用する必要があります。では、ADO.NET SqlClient が代わりに名前付きパイプ プロトコルを使用することを決定するには、どうすればよいのでしょうか?
ほとんどの場合、すべてが正常に機能していますが、必要に応じてこの種のエラーを防止できるように、プロセスを知る必要があります。
前もってありがとう、トドル