2

Linq-to-SQL 接続に問題があります。Linq-to-SQL を使用してデスクトップ アプリケーションを開発しました。サービス ベースのローカル データベースを使用.mdfし、セットアップ プロジェクトにそのファイルを配置して、このアプリケーション用に 1 つのセットアップを作成しました。今私の問題は、セットアップを作成して他のPCにインストールすると、次のようなエラーが表示されることです

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

私の接続文字列は

 connectionString="AttachDbFilename=|DataDirectory|\DailyExpense.mdf; 
                   Integrated Security=True;User Instance=True"
4

1 に答える 1

1

接続文字列の記述方法は、ターゲットマシンにSQLServerがインストールされていることを示しています。使用した形式は、指定した.mdfファイルをSQLサーバーのローカルRUNNINGインスタンスに添付するようにアプリケーションに「指示」します。リモートサーバーを使用する場合は、サーバー自体を指すように接続文字列を少し書き直す必要があります。接続文字列は次のようになります。

data source=(MY MACHINE)\sqlexpress;initial catalog=DailyExpense;integrated security=True

ここで、-MY MACHINEは、sqlexpressインスタンスが実行されているサーバーになります。--sqlexpressは、sqlインスタンスの名前です(デフォルトはsqlexpressです)。-DailyExpenseはデータベースの名前です(データベース名が指定したmdfファイルと同じであると想定しています)。

于 2012-07-23T09:15:51.497 に答える