我该如何处理这个异常

时间:2014-04-29 10:21:28

标签: c# wpf xaml

我正在连接数据库,当我使用无效凭据测试时,我收到异常。 连接的代码是在一个单独的类中,我已经在那里捕获错误。

但它似乎经历了这个并且有另一个异常指向我调用构造函数的位置,该构造函数在我的mainWindow.xaml.cs中。我该如何处理第二个异常。我在MainWindow页面上进行了另一次try / catch,异常仍然存在。请指教。

//Code at class SimpleDataSource which does the connection:

public void Connect(string server, string database, int port, string user, string password)
        {
            // TODO: Initialise MySqlConnection object with parameters,
            // open connection with suitable exception handling.
            string connStr = "server=" + server + ";database=" + database + ";port=" + port + ";user=" + user + ";password=" + password + ";";

            try
            {
                conn = new MySqlConnection(connStr);
                conn.Open();
            }
            catch (MySqlException e)
            {
                MessageBox.Show(@"Unable to connect to database. 
                                Please check the following and try again.
                                1. Ensure you have an internet connection.
                                2. Ensure your credentials are entered correctly");
                Console.WriteLine("The error is " + e);
            }

        } 

//Calling the constructor for that class on my MainWindow which is causing the exception:
SimpleDataSource dataSource;
try { dataSource = new SimpleDataSource("111.111.11.11", "eeeee", 3306, "eeeee", "eeee"); }
catch (MySqlException e) { e.StackTrace.ToString();}

错误讯息: 我试图交换XamlParseException而不是MySqlException和相同的结果。 enter image description here

1 个答案:

答案 0 :(得分:1)

您可以发布MainWindow()构造函数中包含的任何代码吗?虽然错误指向xaml中的第3行,但错误可能在其他地方。在xaml.cs页面上,除了构造函数之外;你在调用与你的数据库对话的任何函数吗?

查看您的InitialiseComponent()。您是否在那里调用与数据库交互的任何功能。如果是,请选择这些行组并在其上添加断点并运行您的应用程序。