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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Web-службы

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


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

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


Проект Управление баннерами
Проект Отправка файлов
Проект Доска сообщений


Введенное посетителем сообщение помещается в таблицу Messages:

    DBlnsert.CommandText = "Insert Into Messages " _
    & "(MessageTitle, MessageText)•values (" _
    & "'" & Replace(txtAddTitle.Text, "'", """) _
    & "', 'Введено: " __
    & Replace (txtAddNaine.Text, "'","''")_
    & "<Ьг>Дата: " & Now() & "<br>"
    & Replace (txtAddMessage. Text, "'", """) & "')"
    DBlnsert.Connection = DBConn
    DBlnsert.Connection.Open
    DBlnsert.ExecuteNonQuery()

После этого мы очищаем элементы управления TextBox, в которые посетитель вводил текст:

    txtAddTitle.Text = ""
    txtAddName.Text = ""
    txtAddMessage.Text = ""

Выбрав добавленное из базы данных сообщение

    DB.Command = New OleDbDataAdapter _
    ("SELECT MessagelD, MessageTitle, " _
    & "MessageText From Messages " _
    & "Where MessagelD = (Select Max(MessagelD) From " _
    & "Messages)", DBConn)
    DBCommand.Fill(DSPageData, _
    "CurrentMessage")

мы сохраняем его идентификатор в переменной сеанса:

    Session("CurrentMessagelD") = _
    DSPageData.Tables("CurrentMessage"). _
    Rows(O).Item("MessagelD")

Теперь заголовок сообщения нужно поместить в элемент управления Label

    IblTitle.Text = "Доска сообщений — " _
    & DSPageData.Tables("CurrentMessage"). _
    Rows(O).ItemC'MessageTitle")

а текст сообщения в другой элемент:

    IblMessage.Text = DSPageData.Tables("CurrentMessage").
    Rows(O) .ItemC'MessageText")

Наконец, мы извлекаем названия и идентификаторы сообщений, предназначенные для заполнения элемента управления DropDownList:

    DBCommand = New OleDbDataAdapter _
    ("SELECT MessagelD, MessageTitle "
    & "from Messages " _
    & "Order By MessageTitle", DBConn)

помещаем их в объект DataSet:

    DBCoiranand.Fill(DSPageData, _
    "Messages")

и связываем элемент DropDownList с таблицей объекта DataSet:

    ddlMessages.DataSource = _
    DSPageData.Tables("Messages").DefaultView
    ddlMessages.DataBind()

Изменение кода для Access

Если вы желаете использовать это решение не с SQL Server, а с Access, замените связующую строку с базой данных SQL Server

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

той строкой, что указывает на базу данных Access:

    DBConn = New OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;"
    & "DATA SOURCE=" _
    & Server.MapPath("/InetBook/C7/MessageBoard/" _
    & "Access/C7MessageBoard.mdb;"))

Еще одно изменение, которое необходимо произвести, касается обновления запроса. При работе с SQL Server в запросе используется функция Convert, а для конкатенации — символ «плюс» (+):

    DBUpdate.CommandText = "Update Messages set " _
    & "MessageText = Convert(varchar(5000), MessageText) " _
    & "+ '<hr>Entered By: "
    & Replace (txtUpdateName.Text, "'", "''")
    & "<br>Date Entered: " & Now() & "<br>" _
    & Replace (txtUpdateMessage. Text, "'","''") _
    & "' Where MessagelD = " _
    & Session("CurrentMessagelD")

В Access функция Convert не нужна, а для объединения строк используется символ амперсанда (&):

    DBUpdate.CommandText = "Update Messages set " _
    & "MessageText = Convert (varchar (5CIOO), MessageText) " _
    & "& '<hr>Entered By: " _
    & Replace(txtUpdateName.Text, "'", '"'") _
    & "<br>Date Entered: " & Now() & "<br>" _
    & Replace (txtUpdateMessage.Text, "'", "''")
    & "' Where MessagelD = " _
    & Session("CurrentMessagelD")

Hosted by uCoz