我是Asp.Net的新手,现在我正面临着这个问题。我已经尝试了很多方式,我从谷歌和这里得到。但我仍然无法找到解决方案。我试图将数据源更改为127.0.0.1,但我仍然得到相同的错误。当我使用 MySql.Data.MySqlClient 时,它实际上可以连接到数据库。但是当我使用 System.Data.SqlClient 时失败 你能帮助我吗?非常感谢你。
代码背后:
private DataTable GetData(string query)
{
DataTable dt = new DataTable();
string constr = ConfigurationManager.ConnectionStrings["WebAppConnStringSql"].ConnectionString;
using (SqlConnection cons = new SqlConnection(constr))
{
using (SqlCommand cmds = new SqlCommand(query))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmds.CommandType = CommandType.Text;
cmds.Connection = cons;
sda.SelectCommand = cmds;
**sda.Fill(dt);** //Error occurs here
}
}
return dt;
}
的Web.config
<connectionStrings>
<add name="WebAppConnStringSql"
connectionString="Data Source=localhost;Initial Catalog=vbsite;Integrated Security=True"
providerName="System.Data.SqlClient"/>
</connectionStrings>
错误: * System.Data.dll中出现'System.Data.SqlClient.SqlException'类型的异常,但未在用户代码中处理
其他信息:建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)* SqlException was unhandled by user code
答案 0 :(得分:0)
您应该打开连接SqlConnection.Open()
:
using (SqlConnection cons = new SqlConnection(constr))
{
cons.Open();
using (SqlCommand cmds = new SqlCommand(query))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmds.CommandType = CommandType.Text;
cmds.Connection = cons;
sda.SelectCommand = cmds;
**sda.Fill(dt);** //Error occurs here
}
}
return dt;
}