> 'Запустить тест!
> Dim testCount As Integer
> For testCount = 1 To NUMBER_TEST_ITERATIONS
> 'Передвинуть дату вперед на один день
> newDate = newDate.AddDays(1)
> Dim numberRecordsChanged As Integer
> 'Просмотреть все имена, используя СТРОКИ
> numberRecordsChanged = _
> changeDayOfTravel_CustomArrays(ТЕST_CREDIT_CARD, newDate)
> 'Убедиться в нормальном выполнении теста
> If (numberRecordsChanged <> 1) Then
> MsgBox("No matching records found. Test aborted!")
> Return
> End If
> Next
> 'Получить время выполнения теста
> PerformanceSampling.StopSample(testNumber)
> 'Обычный курсор
> System.Windows.Forms.Cursor.Current = _
> System.Windows.Forms.Cursors.Default
> 'Отобразить результаты теста
> Dim runInfo As String = NUMBER_TEST_ITERATIONS.ToString() + _
> "x" + DUMMY_ROWS_OF_DATA.ToString() + ": " MsgBox(runInfo + _
> PerformanceSampling.GetSampleDurationText(testNumber))
>End Sub
>Private Function changeDayOfTravel_CustomArrays( _
> ByVal creditCardNumber As String, ByVal newTravelDate _
> As System.DateTime) As Integer
> Dim numberRecordsChanged As Integer
> 'Просмотреть каждый элемент массива
> Dim index As Integer
> For index = 0 To DUMMY_ROWS_OF_DATA
> Dim currentCreditCard As String
> currentCreditCard = m_data_creditCards(index)
> 'Обновить запись при наличии совпадения
> If (creditCardNumber = currentCreditCard) Then
> 'Изменить дату поездки
> Dim currentTravelDate As System.DateTime = _
> m_data_travelDates(index)
> 'Увеличить значение счетчика обновлений только при несовпадении данных
> If (currentTravelDate <> newTravelDate) Then
> m_data_travelDates(index) = _
> newTravelDate
> numberRecordsChanged = numberRecordsChanged + 1
> End If
> End If
> Next
> 'Возвратить количество обновленных записей
> Return numberRecordsChanged
>End Function
>Private Sub buttonRunTest_Click(ByVal sender As Object, _
> ByVal e As System.EventArgs) Handles buttonRunTest.Click
> createDataSet()
> changeDayOfTravel_test()
>End Sub
Листинг 14.5. Пример пользовательского управления данными — код, помещаемый в форму Form1.cs
>'Создает базу данных
>Private Sub buttonCreateDatabase_Click(ByVal sender As Object, _
> ByVal e As System.EventArgs) Handles buttonCreateDatabase.Click
> DatabaseAccess.CreateAndFillDatabase()
>End Sub
>'Загружает данные из базы данных и отображает их
>Private Sub buttonLoadGameData_Click(ByVal sender As Object, _
> ByVal e As System.EventArgs) Handles buttonLoadGameData.Click
> 'Очистить текстовое окно
> TextBox1.Text = ""
> 'Загрузить данные для слов
> GameData.InitializeGameVocabulary()
> 'Обойти все слова и добавить их в текстовый список