Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Надоел Exeption Message / 10 сообщений из 10, страница 1 из 1
12.06.2004, 23:47
    #32559548
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
Достала уже !

Нижепреведённый код работает как надо с откомментированной строкой
'MessageBox.Show(exe.Message), снимаешь комментарий, он тоже работает, но выкидывает сообщение "The ConnectionString property has not been initialized".
Жмёшь ОК, всё работает дальше. Но на кой мне нужны эти сообщения.

Private Sub ComboBox1_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedValueChanged
Dim cmd As System.Data.SqlClient.SqlCommand = New System.Data.SqlClient.SqlCommand
Dim da As System.Data.SqlClient.SqlDataAdapter = New
System.Data.SqlClient.SqlDataAdapter(cmd)
Dim dts As DataSet = New DataSet
Try
cmd.CommandType = CommandType.StoredProcedure
cmd.CommandText = "UP_SelAutoCat"
cmd.Connection = Me.SqlConnection1
cmd.Parameters.Add(New System.Data.SqlClient.SqlParameter("@ident", SqlDbType.Int))
cmd.Parameters(0).Direction = ParameterDirection.Input
cmd.Parameters(0).Value = Me.ComboBox1.SelectedValue

dts.Tables.Add("UP_SelAutoCat")
Me.grdAutoCat.DataSource = dts
Me.grdAutoCat.DataMember = "UP_SelAutoCat"
da.Fill(dts, "UP_SelAutoCat")

Catch exe As Exception
'MessageBox.Show(exe.Message)
End Try
End Sub

Можно ли игнорировать это откомментировав строку, или всё-таки надо искать причину ?


Спасибо
...
Рейтинг: 0 / 0
13.06.2004, 16:18
    #32559828
Ирина
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
Вы уверенны, что все работает как надо? Если бы работало правильно, то Exception бы не случалось. Нужно разобраться какая строчка кода приводит к этому Exception, а вопрос выдавать его пользователю или нет вторичен.

Ирина

----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
14.06.2004, 14:20
    #32560328
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
Говоря то, что код работает как надо, я имел ввиду то, что результат его работы получается таким, каким и надо, и не происходит выкидывания в отладчик, стало быть ошибка явно не критическая. А вот насколько целесообразно её отлавливать я не могу пока определить.
Конечно, я пытался отловить её, конкретно MessageBox.Show(exe.StackTrace) указывает на строку
da.Fill(dts, "UP_SelAutoCat")
но что здесь не так я не пойму, к тому же думаю, что если ругается на заполнение адаптера, то реально ошибка может быть до этой строки.
...
Рейтинг: 0 / 0
16.06.2004, 08:53
    #32562810
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
А если вообще убрать try exception пока, где будет ошибка?

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
16.06.2004, 10:38
    #32562980
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
Добрый день уважаемый Sa

Чтой-то без Вас совсем труба ...

Если убрать try exeption, то указывает на строку
da.Fill(dts, "UP_SelAutoCat")

В этой же форме ещё присутствует код

Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim cmd As System.Data.SqlClient.SqlCommand = New System.Data.SqlClient.SqlCommand
Dim da As System.Data.SqlClient.SqlDataAdapter = New System.Data.SqlClient.SqlDataAdapter(cmd)
Dim dts As DataSet = New DataSet
Try
cmd.CommandText = "select * from AutoCatalog"
cmd.Connection = Me.SqlConnection1

da.Fill(dts, "AutoCatalog")
With Me.ComboBox1
.DataSource = dts.Tables("AutoCatalog")
.DisplayMember = "model"
.ValueMember = "identTypeAuto"
End With

Catch exe As Exception
MessageBox.Show(exe.Message)
End Try

End Sub

Там я тоже убирал try exeption, но ошибок там не было. Строка подключения там используется одна и та же.

Спасибо за отклик.
...
Рейтинг: 0 / 0
16.06.2004, 11:38
    #32563171
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
А если попробовать так, на Open ругается?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Private Sub ComboBox1_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedValueChanged
        Dim cmd As System.Data.SqlClient.SqlCommand = New System.Data.SqlClient.SqlCommand
        Dim da As System.Data.SqlClient.SqlDataAdapter = New 
System.Data.SqlClient.SqlDataAdapter(cmd)
        Dim dts As DataSet = New DataSet
            cmd.CommandType = CommandType.StoredProcedure
            cmd.CommandText = "UP_SelAutoCat"
            cmd.Connection = Me.SqlConnection1
            cmd.Parameters.Add(New System.Data.SqlClient.SqlParameter("@ident", SqlDbType.Int))
            cmd.Parameters( 0 ).Direction = ParameterDirection.Input
            cmd.Parameters( 0 ).Value = Me.ComboBox1.SelectedValue

            dts.Tables.Add("UP_SelAutoCat")
            Me.grdAutoCat.DataSource = dts  
           Me.grdAutoCat.DataMember = "UP_SelAutoCat"  
           Me.SqlConnection1.Open() ' Добавил эту строку
            da.Fill(dts, "UP_SelAutoCat")
            Me.SqlConnection1.Close() ' Добавил эту строку
    End Sub
...
Рейтинг: 0 / 0
16.06.2004, 11:56
    #32563218
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
В этом случае выдаёт всё то же "The ConnectionString property has not been initialized" и "The connection is already Open (state=Open)", к тому же заполнение адаптера не происходит.
...
Рейтинг: 0 / 0
16.06.2004, 12:03
    #32563231
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
То есть у вас раньше где то открывается Connection, тогда закройте его.

Me.SqlConnection1.Close()

Лучше открывать и закрывать Connection перед Fill (если Fill несколько) и закрывать сразу же после Fill.

В вашем же случае SqlConnection1 открывать вообще не надо. Любой метод Fill в таком случае откроет и закроет connection самостоятельно.

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
16.06.2004, 12:46
    #32563351
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
Спасибо, сейчас проверю ещё раз.

PS Такая мысль приходила в голову, но уверен не был - смотрел бегло.
...
Рейтинг: 0 / 0
22.06.2004, 13:38
    #32571611
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Надоел Exeption Message
Ox, смотрел, смотрел - открытых Connection не нашёл, но решил проблему, подставив в Main форму ConnString как Public Shared. Потом переписал вручную объекты ADO и всё заработало.
Блин, до сих пор не пойму - помогает код мастера, или мешает ?
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Надоел Exeption Message / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]