App_DataフォルダーにNORTHWND.LOGとともにNORTHWND.mdfのコピーを取得しました
私の接続文字列:
<add name="northwind_connection" connectionString="Data Source=.\SQLEXPRESS;AttachDbFileName=|DataDirectory|NORTHWND.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient" />
接続を開いたり閉じたりしようとすると、すべてうまくいきます。
string connStr = WebConfigurationManager.ConnectionStrings["northwind_connection"].ToString();
SqlConnection conn = new SqlConnection(connStr);
SqlCommand command = new SqlCommand("Select * From Products");
command.Connection = conn;
conn.Open();
SqlDataReader reader = command.ExecuteReader();
GridView1.DataSource = reader;
GridView1.DataBind();
conn.Close();
このコードの横に、コードを配置するときにページに SqlCacheDependency を追加したい: msdn に表示
SqlDependency.Start(connStr);
次のエラーが表示されます:
ファイル C:\Program Files (x86)\Common Files\Microsoft Shared\DevServer\10.0\NORTHWND.mdf の自動名前付きデータベースをアタッチしようとして失敗しました。同じ名前のデータベースが存在するか、指定されたファイルを開くことができないか、ファイルが UNC 共有にあります。
なぜこれが起こるのか、SqlCacheDependency が機能するために何を設定する必要がありますか。
前もってエランに感謝します。
さらに、接続文字列を特定の文字列に変更する場合は、それを追加したいと思います
<add name="northwind_connection" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\NORTHWND.MDF; Integrated Security=True" providerName="System.Data.SqlClient" />
すべてが正常に機能しますが、ユーザーが接続文字列を自分のパスに変更することを期待していないため、それは間違っているようです.作業:
<add name="myConnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=NORTHWND;Integrated Security=True;" providerName="System.Data.SqlClient"/>
この問題に光を当ててください。これを可能にする構成が必要です。前もって感謝します。エラン。