我想访问localDB。我在sql server中的连接字符串如下所示
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\aspnet-Tv3-20171226095229.mdf;Initial Catalog=aspnet-Tv3-20171226095229;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
我的mdf文件就像这样在app_data中
public static DataSet GetDataSetFromStoredProc(string sql, Dictionary<string, dynamic> dictionary, string _ConnectionString)
{
try
{
using (SqlConnection connection2 = new SqlConnection(_ConnectionString))
{
SqlCommand cmd = new SqlCommand(sql, connection2);
cmd.CommandType = CommandType.StoredProcedure;
foreach (KeyValuePair<string, dynamic> pair in dictionary)
{
cmd.Parameters.AddWithValue(pair.Key, pair.Value);
}
SqlDataAdapter adp = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
adp.Fill(ds);
return ds;
}
}
catch (SqlException err)
{
// Replace the error with something less specific.
// You could also log the error now.
throw new ApplicationException("Data error. " + err.Message.ToString());
}
}
public static DataTable GetDataTableFromStoredProc(string sql, Dictionary<string, dynamic> dictionary, string _ConnectionString)
{
DataSet ds = GetDataSetFromStoredProc(sql, dictionary,_ConnectionString);
if (ds.Tables.Count > 0)
return ds.Tables[0];
return null;
}
现在我正在执行如下功能:
GetDataTableFromStoredProc("down_data", dictionary, System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString)
但我得到一个例外如下:
数据错误。建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供程序:SQL网络接口,错误:50 - 发生本地数据库运行时错误。无法创建自动实例。有关错误详细信息,请参阅Windows应用程序事件日志。)
怎么解决这个?
尝试从连接字符串中删除“Initial Catalog = aspnet-Tv3-20171226095229;”。
尝试使用Integrated Security = SSPI