Знакомство с ASP.NET

Что еще нужно знать об ASP.NET

Взаимодействие с клиентом

Создание интерактивных приложений для intranet-сетей

Расширение функциональных возможностей intarnet

Создание спортивного Web-узла

Управление содержимым Web-узла

Отслеживание действий посетителейa

Виртуальный университет

 Использование специализированных приложений на узлах компаний

Виртуальная риэлтерская контора

Персонализация узла для посетителей

Интерактивные возможности узла

Увеличение посещаемости узла

Создание интерактивного магазина

Создание интерактивного аукциона

Web-службы

Справочник по языку ASP.NET/VB.


Сайт создан по материалам книги Г. Бучека "Учебный курс по ASP.NET". Москва: BHV, 2002.

Создатель сайта-выпускник курсов web-дизайнеров Сафоновского Колледжа Информационных Технологий Максим Котликов
Когда посетитель впервые начинает просматривать категории, никакой ID на эту страницу не передается:

    If Len(Request.QueryString("ProductCategoryID")) = 0 Then

Поэтому мы устанавливаем его равным 1 и считаем, что указанное значение является идентификатором категории Clothes. Учтите, что значение этой переменной придется заменить ID той категории, которую, по вашему мнению, необходимо считать категорией верхнего уровня:

    CurrentCategorylD = 1

Если посетитель уже выбрал категорию товара в элементе управления DataGrid, то используется переданный на страницу код ID этой категории:

    CurrentCategorylD = Request.QueryStringC'ProductCategorylD")

После этого создается подключение к базе данных:

    DBConn = New OleDbConnection("Provider=sqloledb;" _
    & "server=localhost;" _
    & "Initial Catalog=INETC15;" _
    & "User Id=°sa;" _
    & "Password=yourpassword;")

Затем из базы данных извлекаются все товары текущей категории:

DBCommand = New OleDbData^Vdapter _
("Select ProductID, ProductName, BriefDescription, " _
& "Price From Products Where " _
& "ProductCategorylD = " & CurrentCategorylD _
& " Order By ProductName", DBConn)

Результаты выполнения запроса помещаются в объект DataSet:

    DBCommand.Fill(DSPageData, _
    "Products")

После этого мы должны связать элемент управления DataGrid с таблицей DataSet:

    dgProducts.DataSource - _
    DSPageData.Tables("Products").DefaultView
    dgProducts.DataBind

К тому же нам следует извлечь перечень всех подкатегорий текущей категории:

    DBCommand = New OleDbDataAdapter _
    ("Select ProductCategorylD, CategoryName, " _
    & "CategoryDescription From ProductCategories Where " _
    & "ParentCategorylD = " & CurrentCategorylD _
    & " Order By CategoryName", DBConn)

Эти данные помещаются в другую таблицу объекта DataSet:

    DBCommand.Fill(DSPageData, _
    "Categories")

С данной таблицей мы связываем другой управляющий элемент DataGrid:

    dgCategories.DataSource = _
    DSPageData.Tables("Categories").DefaultView
    dgCategories.DataBind

Кроме того, нам необходимо извлечь название текущей категории:

    DBCommand = New OleDbDataAdapter _
    ("Select CategoryName " _
    & "From ProductCategories Where " _
    & "ProductCategorylD = " & CurrentCategorylD _
    , DBConn)
    DBCommand.Fill(DSPageData, _
    "CategoryName")

Это название помещается в управляющий элемент Label, образующий заголовок:

    IblTitle.Text = "<CENTER>"
    & DSPageData.Tables("CategoryName"). _
    Rows(0).Item("CategoryName") & "</CENTER>"

Страница Товары

Страница Товары предоставляет полную информацию о товаре. Просмотрев ее, посетитель может поместить данный товар в корзину покупателя.

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

    <asp:Label
    id="lblTitle"
    BorderWidth="7px"
    BorderStyle=7
    Width="90%"
    Font-Size="25pt"
    Font-Name="Arial"
    runat="server"
    />

Далее определяется элемент управления. HyperLink, который используется для демонстрации маленького изображения товара. Этот элемент управления связан и с полноразмерным изображением товара, появляющимся после щелчка мышью на элементе:

    <asp:HyperLink
    id=°"hyplcon"
    runat="seryer"
    Text="Щелкните для увеличения изображения"
    BorderWidth="7px"
    BorderStyle=7
    />

Hosted by uCoz