Ошибка подключения не инициализирована в блоке перехвата - PullRequest
1 голос
/ 23 ноября 2010

В этом коде

    private void btnConnect_Click(object sender, EventArgs e)
    {
        string localHost = "192.168.10.3";
        string logInDetails = "gp";
        SqlConnection sConnection = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);

        try
        {

            //Checking for the Valid entries in textboxes.
            if ((txtPassword.Text == logInDetails) && (txtUsername.Text == logInDetails))

                //Checking for the appropriate local server address.
                if (txtHost.Text == localHost)
                {
                    sConnection.Open();
                    BindDBDropDown();
                    SetOperationDropDown();
                    PrimaryKeyTable();
                    lblError.Text = "You are connected to the SQL Server....";
                }
                else
                {
                    lblError.Text = "Invalid Credentials";
                }

        }
        catch (Exception ex)
        {
            //All the exceptions are handled and written in the EventLog.
            EventLog log = new EventLog("Application");
            log.Source = "MFDBAnalyser";
            log.WriteEntry(ex.Message);
        }
        finally
        {
            //To close the connection
            if (sConnection != null)
            {
                sConnection.Close();
            }
        }
    }

соединение не инициализировано, ошибка обнаружена ...

В файле app.config у меня было

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="ConnectionString" value="Data Source=192.168.10.3;InitialCatalog=GoalPlanForTrainees;userid=gp;password=gp"/>
  </appSettings>
</configuration>

Чтоможет быть проблема

1 Ответ

1 голос
/ 23 ноября 2010

В данный момент вы открываете соединение (sConnection.Open();) только внутри try. Конечно, наиболее вероятное место, которое исключение выдает , это эта строка. В любом случае, имеет смысл, что соединение не обязательно должно быть открыто в catch.

И если основной проблемой является , что вызов .Open() не удался, мало что он может сделать ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...