DARK__FOXX Ответов: 1

Как сделать создание класса, который считывает данные из БД в VB?


Всем привет,
У меня есть проблема о том, как создать класс, который считывает значения из БД на ASP.NET проект с использованием VB.

Я создал класс и вставил внутрь метод загрузки страницы но вернул мне такую ошибку "
Ссылки на объекты не задаются для экземпляра объекта"

Если я создаю функцию внутри основного класса works, я не понимаю, в чем проблема (lol)

Что я уже пробовал:

Это класс, который считывает данные из БД:


<pre>Public Class Class_LECTURE_TABLE_01
    Dim connection_DB As New Class_CN_DB_XXXXXX("XXXXXXXXXX")
    Dim cn As New SqlConnection(connection_DB.Connessione)
    Dim MyParm As SqlParameter
    Dim cmd As New SqlCommand
    Dim dataAdapter As New SqlDataAdapter(cmd)
    Dim dataTbl As New DataTable
    Private Repeater1 As Repeater

    Public Sub LECTURE_TABLE_01()


        cmd.CommandType = CommandType.StoredProcedure
        cmd.Connection = cn
        cmd.CommandText = "LST_LECTURE_TABLE_01"
        Try
            cn.Open()
            dataAdapter.Fill(dataTbl)
            Repeater1.DataSource = dataTbl
            Repeater1.DataBind()


        Catch ex As Exception
            MsgBox(ex.Message)
        Finally
            cn.Close()
        End Try

    End Sub




а это и есть загрузочная страница()


Защищенный Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Обрабатывает Меня.Load

Если Не Я.IsPostBack Тогда
Dim lecture_value_TABLE как новый Class_LECTURE_TABLE_01()
lecture_value_TABLE.LECTURE_TABLE_01()


Конец, Если


Конец Подводной Лодки

1 Ответов

Рейтинг:
0

Sandeep Mewara

Подробности об ошибке вы видите: Класс NullReferenceException (System) | Microsoft Docs[^]

Цитата:
Исключение NullReferenceException возникает при попытке доступа к члену типа, значение которого равно null

Возможно потому что:
1. Вы забыли создать экземпляр ссылочного типа
2. Вы забыли измерить массив перед его инициализацией.
3. Вы получаете нулевое возвращаемое значение из метода, а затем вызываете метод для возвращаемого типа.
4. Вы используете выражение (например, связываете список методов или свойств вместе) для получения значения
5. Вы перечисляете элементы массива, который содержит ссылочные типы, и ваша попытка обработать один из элементов вызывает
6. исключение создается методом, который передается null


Следующее поможет вам узнать об отладке:
Учебник: отладка кода Visual Basic - Visual Studio | Microsoft Docs[^]
Первый взгляд на отладчик - Visual Studio | Microsoft Docs[^]

При отладке вы сможете получить точную строку, где переменная равна нулю и возникает ошибка.


Теперь, в вашем случае, если вы отлаживаете, я думаю, что это в основном из-за отсутствия инстанцированного управления ретранслятором:
Repeater1.DataSource = dataTbl;

Попробуйте.


DARK__FOXX

Хорошо, я создал экземпляр Repeater, добавив New в объявление, и я запускаю режим отладки, но я не понимаю, почему моя таблица не отображается.

Поэтому я поискал в интернете и увидел, что многие добавляют этот метод ниже страницы загрузки, но мне нужно создать класс.

Sandeep Mewara

Вам также нужно определить, что вы хотите показать в repeater из таблицы. Пожалуйста, пройдите базовый учебник по ретранслятору (предполагая, что это то, что вы хотите использовать).

Кроме того, есть два способа сделать это:
1. Управление ретранслятором в самом пейджере deisnger
2. Управление ретранслятором во время выполнения (тот, который вы взяли)

Вариант 1 может быть проще для вас, чтобы узнать в первую очередь. Пожалуйста, выберите базовый учебник и пройдите его.