Лучший способ заполнить поля формы из SQL? - PullRequest
1 голос
/ 13 января 2011

Я пытаюсь заполнить сеть из таблицы SQL.

Это то, что у меня есть сейчас, хотя я не уверен, что это лучший способ сделать что-то, пожалуйста, дайте мне предложения:

Public Class userDetails
    Public address1 As String
    Public address2 As String
    Public city As String
    ...
...
...
End Class

Public Class clsPerson
    'set SQL connection
    Dim objFormat As New clsFormat
    Dim objConn As New clsConn()
    Dim connStr As String = objConn.getConn()
    Dim myConnection As New Data.SqlClient.SqlConnection(connStr)

    Public Function GetPersonDetails() As userDetails
        'connection and all other good stuff here

        Try
            ' Execute the command
            myConnection.Open()
            dr = myCommand.ExecuteReader()

            ' Make sure a record was returned
            If dr.Read() Then
                ' Create and Populate ApplicantDetails
                userDetails.address1 = dr("address1")
                userDetails.address2 = objFormat.CheckNull(dr("address2"))
                userDetails.city = objFormat.CheckNull(dr("city"))
                ....

            Else
                Err.Raise(4938, "clsUser", "Error in GetUserDetails - User Not Found")
            End If

            dr.Close()
        Finally
            myConnection.Close()
        End Try

        Return userDetails
    End Function

Затем я использую функцию GetPersonDetails () в моем бэкэнде для заполнения формы.

примерно так:

Dim userDetails as new userDetails
userdetails = getPersonDetails()

txtAddress.text = userdetails.address1

etc....

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

Спасибо!

Ответы [ 2 ]

1 голос
/ 13 января 2011
  1. Отражение Имена свойств

  2. Вывести имя элемента управления из имени свойства, например, "txt" & fieldName

  3. Используйте FindControl , чтобы найти элемент управления и заполнить его свойство Text.

Вы также можете генерировать поля динамически, хотя вы потеряете некоторый контроль над представлением. Однако это решение я бы не использовал - оно может сделать код хрупким и трудным для отладки.

0 голосов
/ 13 января 2011

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

Обратите внимание, что внизу есть ссылка «Продолжить чтение»: http://www.startvbdotnet.com/ado/simplebinding.aspx

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