Создание Web-формы для ввода данных addcontact 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Создание Web-формы для ввода данных addcontact



1. Добавьте к проекту новую Web-форму и назовите ее AddContact.aspx.

2. В окне Properties выберите объект DOCUMENT и задайте для свойства P ageLayou t значение FlowLayout.

3. Разместите на Web-форме элементы управления, перечисленные в следующей таблице, и задайте их свойства, как указано в этой таблице.

 

Элемент управления Свойство Значение
TextBox ID txtFirstName
TextBox ID txtLastName
TextBox ID txtAddress
  TextMode MultiLine
TextBox ID txtCity
DropDownList ID drpStates
  DataSource arrState
TextBox ID txtZIP
TextBox ID txtHomePhone
TextBox ID txtWorkPhone
TextBox ID txtNotes
DropDownList ID drpContactTypes
Button ID butAdd
  Text Add
Button ID butCancel
  Text Cancel
Literal ID litStatus
Hyperlink Text Вернуться на главную
  NavigateUrl SwitchBoard.aspx

 

 

4. Введите подписи полей прямо на Web-форме, для перехода на новую строку используйте Enter.

5. Вызовите окно Code, дважды щелкнув Web-форму, и добавьте в начало модуля следующий оператор: Imports System.Data.SqlClient

6. Web-форма AddContact использует компоненты БД. созданные в файле Global.asax во время выполнения задания 2. Чтобы получить возможность применять эти компоненты в Web-форме, объявите переменные на уровне класса и получите ссылки на эти компоненты из переменных состояния, где они хранятся. Следующий код демонстрирует, как это делается:

 

Dim ContactMgmt As SqlConnection

Dim adptContactTypes As SqlDataAdapter

Dim adptContacts As SqlDataAdapter

Dim dsContacts As New dsContacts()

' Это открытые переменные для привязки данных.

Public dsContactTypes As New dsContactTypes()

Public arrState As String() = Московская", "Тульская", "Калужская", "Воронежская", _

"Ростовская", "Владимирская"}

Private Sub Page_Load(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles MyBase.Load

' Получить объекты соединения и адаптера из переменной состояния Session.

ContactMgmt = Session("ContactMgmt")

adptContactTypes = Session("adptContactTypes")

adptContacts = Session("adptContacts")

' Заполните набор дачных ContactType.

AdptContactTypes.Fill(dsContactTypes)

' Заполните набор данных Contacts.

AdptContacts.Fill(dsContacts)

' Связать с данными списки drpContactTypes и drpState.

DrpContactTypes.DataBind()

DrpStates.DataBind()

End Sub

 

7. Каждый контакт в таблице Contacts идентифицируется значением поля ContactlD. Это первичный ключ таблицы, следовательно, его значение должно быть уникальным для каждого контактного лица. Поэтому перед добавлением к набору данных Contacts сведений о контактном лице необходимо получить из БД новое уникальное значение ContactlD, для чего к классу Web-формы потребуется добавить следующую вспомогательную функцию (эта функция возвращает новое уникальное значение ContactlD):

 

Private Function GetNewContactID() As Integer

Dim cmdNewID As New SqlCommand("SELECT MAX(ContactID)" & _

" FROM Contacts", ContactMgmt)

' Открыть соединение с БД.

ContactMgmt.Open()

' Получить наибольшее значение ключа.

Dim intID As Integer

' Проверить, существует ли запись.

If Not (cmdNewID.ExecuteScalar() Is DBNull.Value) Then

' Получить наибольшее число...

intID = CInt(cmdNewID.ExecuteScalar())

Else

'...или присвоить intID значение О.

intID = 0

End If

' Закрыть соединение.

ContactMgmt.Close()

' Вернуть новое значение ключа (оно будет на единицу больше прежнего)

Return intID + 1

End Function

 

 

8. Далее необходимо добавить обработчик события butAdd_Click, который позволяет вставить в БД сведения о новом контактном лице:

 

Private Sub butAdd_Click(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles butAdd.Click

' Создать новую строку набора данных.



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 107; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.124.143 (0.006 с.)