我正在使用MySQL Connector/Net 6.7.4向Windows 8商店应用中的MySQL数据库发送和接收数据。它完美地适用于一台机器,但不适用于另一台机器。
这是错误:
mscorlib.dll中出现'System.AggregateException'类型的第一次机会异常 MySql.Data.RT.DLL中发生了'MySql.Data.MySqlClient.MySqlException'类型的第一次机会异常 MySql.Data.RT.DLL中发生了'MySql.Data.MySqlClient.MySqlException'类型的第一次机会异常 MySql.Data.RT.DLL中发生了'MySql.Data.MySqlClient.MySqlException'类型的第一次机会异常 MySql.Data.MySqlClient.MySqlException:无法连接到任何指定的MySQL主机。 ---> System.AggregateException:发生一个或多个错误。 ---> System.Threading.Tasks.TaskCanceledException:任务已取消。 ---内部异常堆栈跟踪结束--- 在System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) 在System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout,CancellationToken cancellationToken) 在System.Threading.Tasks.Task.Wait() at MySql.Data.Common.MyNetworkStream.OpenConnection() at MySql.Data.Common.MyNetworkStream.Open() at MySql.Data.Common.MyNetworkStream.CreateStream(MySqlConnectionStringBuilder settings,Boolean unix) 在MySql.Data.Common.StreamCreator.GetTcpStream(MySqlConnectionStringBuilder设置) 在MySql.Data.Common.StreamCreator.GetStream(MySqlConnectionStringBuilder设置) at MySql.Data.MySqlClient.NativeDriver.Open() ---内部异常堆栈跟踪结束--- at MySql.Data.MySqlClient.NativeDriver.Open() at MySql.Data.MySqlClient.Driver.Open() 在MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder设置) at MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection() at MySql.Data.MySqlClient.MySqlPool.GetPooledConnection() at MySql.Data.MySqlClient.MySqlPool.TryToGetDriver() at MySql.Data.MySqlClient.MySqlPool.GetConnection() at MySql.Data.MySqlClient.MySqlConnection.Open() 在QuantiView.Classes.clsGlobal.mMySqlConnect() MySql.Data.RT.DLL中发生了'System.InvalidOperationException'类型的第一次机会异常 mscorlib.dll中发生了'System.InvalidOperationException'类型的第一次机会异常 System.InvalidOperationException:Connection必须有效且打开。 at MySql.Data.MySqlClient.MySqlConnection.Throw(Exception ex) at MySql.Data.MySqlClient.MySqlCommand.Throw(Exception ex) at MySql.Data.MySqlClient.MySqlCommand.CheckState() at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior) at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader() 在QuantiView.Classes.clsGlobal.d_ 20.MoveNext() ---从抛出异常的先前位置开始的堆栈跟踪结束--- 在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务) 在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 在QuantiView.Pages.p1Project.d _f.MoveNext()
连接代码:
public static void mMySqlConnect()
{
Debug.WriteLine("mMySqlConnect");
Debug.WriteLine("internet = " + IsInternet());
if (connection.Equals(null)) connection = new MySqlConnection(connectionString);
try
{
if (connection.State.Equals(ConnectionState.Closed)) connection.Open();
}
catch (MySqlException ex)
{
Debug.WriteLine(ex.ToString());
switch (ex.Number)
{
case 0:
Debug.WriteLine("Cannot connect to server. Contact administrator");
break;
case 1045:
Debug.WriteLine("Invalid username/password, please try again");
break;
}
}
}
两台机器都运行Win8.1完全更新,相同版本的VS(2013年也更新),具有相同的引用和已安装的程序集,都连接到同一网络。
答案 0 :(得分:0)
打开 Package.appxmanifest 打开功能标签和检查专用网络(客户端和服务器)