我遇到以下异常:
System.Net.Sockets.SocketException:发送或接收数据的请求 被禁止,因为套接字没有连接(发送时) 在使用sendto调用的数据报套接字上)没有提供地址 在System.Net.Sockets.Socket.Shutdown(SocketShutdown如何)处 MySql.Data.Common.SocketStream.Read(Byte []缓冲区,Int32偏移量,Int32 count)在System.IO.BufferedStream.ReadByte()at MySql.Data.MySqlClient.PacketReader.ReadHeader()at MySql.Data.MySqlClient.PacketReader.OpenPacket()at MySql.Data.MySqlClient.NativeDriver.Open()at MySql.Data.MySqlClient.MySqlConnection.Open()at DataAcessLayer.SQLData.ExecuteNonQuery(String sql,MySqlParameter [] p) 在e:Live ApplicationFMSGSFMSApp_CodeDataAccessLayerSQLData.cs:第42行
我正在使用MYSQL.dll进行数据库连接。这个例外是什么意思?如果您需要任何其他信息,请告诉我。
我遇到异常的代码;
public static int ExecuteNonQuery(string sql, MySqlParameter[] p)
{
MySqlConnection cnn = new MySqlConnection(strConn);
int retval = 0;
try
{
cnn.Open(); // this is line no 42 which throws error
MySqlCommand cmd = new MySqlCommand(sql, cnn);
if (p == null)
cmd.CommandType = CommandType.Text;
else
cmd.CommandType = CommandType.StoredProcedure;
if (p != null)
{
for (int i = 0; i < p.Length; i++)
{
cmd.Parameters.Add(p[i]);
}
}
retval = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
if (cnn != null)
{
cnn.Close();
}
TealErrorLog.addError(4, "SQLData.cs at Line 65; Query:" + sql, ex.ToString() + " Parameters:" + p.ToString(), MySQLCommonFunctions.toMySQLDate(DateTime.Now.ToString()));
}
finally
{
if (cnn != null)
{
cnn.Close();
}
}
return retval;
}