
- •Принцип работы Web. Динамическая обработка. Особенности asp.Net. Клиентская обработка. Объединение аsр.Nет клиентской и серверной составляющих
- •2 Net Framework. Соmmon Language Runtime. Классы .Net Framework|net Framework. Соmmon Language Runtime. Классы .Net Framework
- •3 Создание страниц аsр.Nет. Среда разработки
- •4 Элементы страницы аsр.Nет
- •5 Сравнение аsр с аsр.Nет. Основные изменения по сравнению с аsр. Усовершенствования в программировании по сравнению с аsр
- •6 Простое приложение asp.Net. Web-формы. Блоки объявления кода. Блоки воспроизведения кода. Страничные директивы. Работа asp
- •7 Написание кода asp.Net и html. Комментирование кода. Код, продолжающийся на множество строк
- •8 Приложение asp.Net. Компиляция asp.Net. Импорт пространств имен|Приложение asp.Net. Компиляция asp.Net. Импорт пространств имен
- •9 Common Language Runtime и asp.Net. Промежуточный язык. Выполнение приложения. Обработка процессов. Сборки. Одновременность
- •10 Языки программирования asp.Net. Анализ кода asp.Net
- •11 Основы Visual Basic.Net
- •12 Visual Basic.Net Переменные. Типы данных. Объявление переменных. Имена переменных. Преобразования типов данных
- •13 Массивы Visual Basic.Net
- •14 Операторы Visual Basic.Net
- •15 Условные структуры. Команды if. Команды Case Visual Basic.Net
- •16 Циклические структуры. Циклы While. Циклы For. Бесконечные циклы. Visual Basic.Net
- •17 Структуры переключений. Процедуры. Функции. Необязательные параметры. Обработчики событий. Visual Basic.Net
- •18 Классы. Оператор new. Наследование. Visual Basic.Net
- •19 Полезные функции vb.Net
- •20 Основы с. Примеры синтаксиса с|Основы с#. Примеры синтаксиса с#
- •21 Применение объектов. Свойства. Методы. Экземпляры объектов с#
- •27 Программная модель Web-форм. Серверные элементы управления. События серверных элементов управления. Отправка Web-форм
- •Основы работы с формами Web
- •28 Программная модель Web-форм. Сохранение состояния. Порядок обработки Web-форм
- •29 Серверные элементы управления html
- •30 Серверные элементы управления Web. Использование элементов управления Web. Немедленная отправка данных. Серверные элементы
- •31 Расширяемость Web-форм
- •32 Пользовательские элементы. Создание пользовательских элементов управления. Использование элементов управления
- •33 Пользовательские элементы управления. Создание и обработка пользовательских элементов управления.Использование свойств и состояния. Передача событий
- •34 Создание элементов управления во время исполнения
- •35 Сценарии проверки правильности данных
- •36 Проверка правильности данных в asp. Net. Как работают элементы управления типа Validation controls
- •37 Использование элементов управления типа Validation controls. Проверка данных на сервере. Отключение проверки правильности данных. Регулярные выражения
- •38 Настройка проверки правильности данных. Сообщения об ошибках. Вывод обобщенного результата проверки правильности данных. Пользовательские элементы управления типа Validation controls
- •44 Язык структурированных запросов (sql). Команда select. Команда insert. Команда update. Команда delete
- •45 Доступ к данным в среде asp. Net
- •50 Элемент управления GridView
- •51 Элементы управления, использующие привязку данных. Редактирование элементов. Сортировка. Разбивка на страницы
- •52 Основные понятия ado.Net. Ado.Net в сравнении с ado. Ado.Net и xml. Модель объекта ado.Net
- •53 DataSet важные особенности. Изменение данных в DataRow. Просмотр данных в DataTable. Параллелизм
- •54 Взаимодействие базы данных с ado.Net. Информация о соединении. Объект Connection. Обновление, Вставка и Удаление
- •55 Взаимодействие базы данных с ado.Net. Объект OleDbDataAdapter. Заполнение DataSet. Обновление источников данных
- •56 Использование ado.Net с asp.Net
- •58 Доступ к xml средствами asp.Net. Чтение xml. Запись в xml. Проверка правильности xml
- •59 Объектная модель документа xml. Загрузка данных xml. Изменение данных xml
- •60 Xml и элементы управления Data
- •61 Прогрессивные технологии работы с данными. Параметризованные запросы. Встроенные процедуры. Создание встроенных процедур в sql Server
- •62 Прогрессивные технологии работы с данными. Создание встроенных процедур в Access 2000. Использование встроенных процедур в asp.Net. Транзакции
- •63 Прогрессивные технологии xml. XPathDocument. XPath. Преобразования xsl
- •64 Работа с файлами в asp.Net
- •65 Включение внешних файлов. Серверные включения. Сравнение серверных и прочих включений. Прочие включения
- •66 Доступ к файлам. Файлы, потоки и операции чтения и записи. Работа с файлами и каталогами
- •67 Доступ к файлам. Открытие файлов. Использование объекта File. Использование объекта FileStream. Чтение файлов. Запись файлов. Прочие операции с файлами и каталогами. Объекты File
- •68 Изолированные хранилища данных. Создание изолированных хранилищ данных. Доступ к изолированным хранилищам
- •73 Эффективное использование кэширования
- •74 Компоненты бизнес-объектов. Понятие бизнес-объекта. Использование компонент бизнес-объекта. Использование компонент asp.Net
- •75 Технология создания бизнес-объектов. Компилирование объекта базы данных
- •76 Создание бизнес-объектов
- •77 Пример бизнес-объекта. Важные замечания по примеру
- •78 Работа с компонентами не из .Net
- •79 Принципы работы Web-службы
- •80 Понятия web-служб. Сценарии Web-служб. Программная модель Web-службы. Протоколы доступа к Web-службам. Назначени Web-службы
- •86 Использование Web-службы с помощью страницы asp.Net. Реализация класса представителя. Другой пример использования Web-службы
- •87 Рекомендации по использованию Web-служб
- •88 Организация защиты Web-служб
- •90 Global.Asax. Класс HttpApplication. Программирование global.Asax
- •91 Конфигурирование asp.Net. Web.Config
- •92 Разделы с параметрами конфигурирования
- •100 Предложения try и catch. Вызов исключений. Когда используется предложение try
- •101 Трассировка. Трассировка на уровне страницы. Трассировка на уровне приложения
- •102 Применение отладчика clr
- •103 Рекомендации по отладке
- •104 Основы защиты информации. Защита данных в операционной системе Windows
- •105 Идентификация. Идентификация Windows. Идентификация на форме. Идентификация Passport
- •106 Авторизация. Серверные элементы управления входом
- •107. Определение ролей пользователей и ограничение доступа средствами asp.Net
13 Массивы Visual Basic.Net
Массив представляет собой набор значений, логически связанных друг с другом, например, число учеников в каждом классе в школе.
С помощью массива, можно обратиться к этим связанным значениям тем же именем и использовать номер, вызвав индексом или подстрочным, который необходимо сообщить им врозь. Отдельные значения, называются элементами массива. Они начинаются от индекса 0 до наибольшее значение индекса.
Элементы массива в простом массиве
В следующем примере объявляется переменная массива для хранения числа учеников в каждом классе школы.
Dim students(6) As Integer
Массив students в предыдущем примере содержит 7 элементов. Индексы элементов лежат в диапазоне от 0 до 6. Использовать этот массив проще, чем 7 объявление переменных.
На следующем рисунке показан массив students. Для каждого элемента массива:
Индекс элемента представляет школьный класс (индекс 0 представляет детский сад).
Значение, содержащееся в элементе представляющее число студентов в этой ранге.
Элементы массива "учеников"
В следующем примере показано обращение к первому, второму и последнему элементу массива students.
Dim kindergarten As Integer = students(0)
Dim firstGrade As Integer = students(1)
Dim sixthGrade As Integer = students(6)
MsgBox("Students in kindergarten = " & CStr(kindergarten))
MsgBox("Students in first grade = " & CStr(firstGrade))
MsgBox("Students in sixth grade = " & CStr(sixthGrade))
Можно ссылаться на массив в целом, используя только имя переменной массива без индексов.
Считается, что массив students в пользах предыдущего примера и одноразмерн один индекс. Массив, использующий более одного индекса, называется многомерным массивом. Дополнительные сведения см. в разделе остальная часть этих разделах и Размерность массивов в Visual Basic.
Создание массива
Указать размер массива можно несколькими способами. Можно указать размер если массив объявляется, как показано в следующем примере.
Dim cargoWeights(10) As Double
Dim atmospherePressures(2, 2, 4, 10) As Short
Dim inquiriesByYearMonthDay(20)()() As Byte
Можно также использовать предложение New, чтобы указать размер массива, когда он создал, как показано в следующем примере.
cargoWeights = New Double(10) {}
atmospherePressures = New Short(2, 2, 4, 10) {}
inquiriesByYearMonthDay = New Byte(20)()() {}
Если уже существует массив, можно переопределить его размер с помощью оператора Redim. Можно указать, что оператор Redim должна содержать значения, которые в массиве или можно указать, что она создает пустой массив. В следующем примере показаны различные варианты использования оператора Redim для изменения размера существующего массива.
' Assign a new array size and retain the current element values.
ReDim Preserve cargoWeights(20)
' Assign a new array size and retain only the first five element values.
ReDim Preserve cargoWeights(4)
' Assign a new array size and discard all current element values.
ReDim cargoWeights(15)
Дополнительные сведения см. в разделе Оператор ReDim (Visual Basic)
Объявление массива
Переменная массива объявляется так же, как любая другая переменная, с помощью инструкции Dim. Выполните типом или именем переменной с одним или несколькими парой скобок, чтобы показать, что он будет содержать массив, а не скаляр, переменная, содержащая одно значение.
В следующем примере объявляется переменная одномерного массива, добавив пару скобок после типа.
Dim cargoWeights() As Double
В следующем примере объявляется переменная многомерного массива путем добавления пару скобок после типа и установив запятые внутри скобок для отделения измерений.
Dim atmospherePressures(,,,) As Short
Для объявления переменной массива массивов добавьте пару скобок после имени переменной для каждого уровня вложенных массивов.
Dim inquiriesByYearMonthDay()()() As Byte
Предыдущие примеры объявляют переменные массива массивов. По-прежнему необходимо создать массив, инициализировать его и присвоить его переменной.
Сохранение значений в массиве
К любому местоположению в массиве можно получить доступ, используя индекс типа Integer. Можно сохранять и извлекать значения массива, ссылаясь на местоположение в массиве с помощью индекса места, приведенного в скобках. Индексы, индексация многомерных массивов разделяются запятыми (,). Необходим один индекс для каждого измерения массива. В следующем примере показаны некоторые операторы, которые сохраняют значения в массивах.
Dim i = 4
Dim j = 2
Dim numbers(10) As Integer
Dim matrix(5, 5) As Double
numbers(i + 1) = 0
matrix(3, j * 2) = j
В следующем примере показаны некоторые операторы, которые получают значения из массивов.
Dim v = 2
Dim i = 1
Dim j = 1
Dim k = 1
Dim wTotal As Double = 0.0
Dim sortedValues(5), rawValues(5), estimates(2, 2, 2) As Double
Dim lowestValue = sortedValues(0)
wTotal += (rawValues(v) ^ 2)
Dim firstGuess = estimates(i, j, k)
Заполнение массива начальными значениями
С помощью литералов массива можно создать массив, содержащий начальный набор значений. Литерал массива состоит из списка разделенных запятыми значений, заключенных в фигурные скобки ({}).
При создании массива с помощью литерала массива можно либо указать тип массива, либо использовать вывод типа для определения типа массива. В следующем коде показаны оба параметра.
Dim numbers = New Integer() {1, 2, 4, 8}
Dim doubles = {1.5, 2, 9.9, 18}
При использовании определение типа, тип массива определяется доминантным введите список значений, передаваемого для литерала массива. Главный тип уникальный тип, к которому все другие введите литерал массива может расширить. Если этот уникальный тип не может быть определен, то главный тип уникальный тип, к которому все другие типа в массив может уменьшить. Если ни один из указанных уникальных типов нельзя определить, главным типом будет Object. Например, если список значений, передаваемого в литерал массива содержит значения типа Integer, Long и Double, то результирующий массив типа Double. и Integer и Long расширяют только к Double. Поэтому Double является главным типом. Эти правила зависимости применяются к типам, которые в результате вывода становятся основанием для массивов, локальные переменные, определенные в члена класса. Хотя можно использовать литералы массива при создании переменных класс- уровня, нельзя использовать определение типа на уровне класса. В результате литералы массива, которые определены на уровне класса вывести значения, которые предоставляются для литерала массива как тип Object.
Можно явно задать тип элементов в массиве, создать с помощью литерала массива. В таком случае значения литерала массива должны расширяться до типа элементов массива. В следующем примере кода создается массив типа Double из списка целых чисел.
Dim values As Double() = {1, 2, 3, 4, 5, 6}
Вложенные литералы массива
Можно создать многомерный массив с помощью вложенных литералов массива. Вложенные литералы массива должны иметь измерение и число измерений или ряда, согласованным с итоговым массивом. В следующем примере кода создается двухмерный массив целых чисел с помощью литерала массива.
Dim grid = {{1, 2}, {3, 4}}
В предыдущем примере возникла ошибка минимум, если число элементов во вложенных литералах массива не соответствует. Ошибка возникла бы также случае явного объявления переменной массива, за исключением двухмерного. Примечание
Избежать ошибки при указании вложенных литералов массива с различными измерениями можно, заключив внутренние литералы массива в круглые скобки. Скобки принудительный выражение литерала массива должен вычисляться и результирующие значения используются с внешним литералом массива, как показано в следующем коде.
Dim values = {({1, 2}), ({3, 4, 5})}
При создании многомерного массива с помощью вложенных литералов массива можно использовать вывод типа. При использовании вывода типа выводимый тип является главным типом для всех значений всех литералов массива какого-либо уровня вложенности. В следующем примере кода создается двухмерный массив типа Double из значений типа Integer и Double.
Dim a = {{1, 2.0}, {3, 4}, {5, 6}, {7, 8}}
Массивы массивов
Массив, который содержит другие массивы как элементы в виде массива массивов или массива массивов. Массив массивов и каждый элемент массива массивов могут иметь одно или несколько измерений. Иногда структура данных в приложении является двухмерной, но не прямоугольной.
Следующий пример содержит массив месяцев, каждый элемент которого массив дней. Поскольку разные месяцы имеют различные число дней, элементы не формируют прямоугольный двумерный массив. Поэтому вместо многомерного массива используется массив массивов.
Dim sales()() As Double = New Double(11)() {}
For month As Integer = 0 To 11
Dim days As Integer =
DateTime.DaysInMonth(Year(Now), month + 1)
sales(month) = New Double(days - 1) {}
Next month
For month As Integer = 0 To 11
Dim upper = sales(month).GetUpperBound(0)
For day = 0 To upper
sales(month)(day) = (month * 100) + day
Next
Next