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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Web-службы

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


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

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


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


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

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

а текст сообщения — во второй элемент Label:

    IblMessage.Text = DSPageData.Tables("CurrentMessage"). _
    Rows(O).Item("MessageText")

Следующая процедура запускается, когда для обновления дискуссии нажимается кнопка Добавит сообщение. Она добавляет сообщение в текущую дискуссию:

    Sub UpdateThread_Click(Sender as Object, E as EventArgs)
    Dim DBConn as OleDbConnection
    Dim DBUpdate As New OleDbCommand
    Dim DSPageData as New DataSet
    DBConn = New OleDbConnection("Provider=sqloledb;" _
    & "server=localhost;" _
    & "Initial Catalog-INETC7;"
    & "User Id=sa;" _
    & "Password=yourpassword;")
    DBUpdate.CommandText = "Update Messages set " _
    & MessageText = Convert(varchar(5000), MessageText) " _
    &"+ '<Ьг>Введено: " _
    & Replace(txtUpdateName.Text, ....., """)
    & "<Ьг>Дата: " & Now() & "<br>" _
    & Replace.(txtUpdateMessage.Text, "'", """) _
    & "' Where MessagelD = "
    & Session("CurrentMessagelD")
    DBUpdate.Connection = DBConn
    DBUpdate.Connection.Open
    DBUpdate.ExecuteNonQuery()
    IblMessage.Text = IblMessage.Text _
    & "<br>Введено: " _
    & txtUpdateName.Text _
    & "<br>Да*а: " S Now() & "<br>" _
    & txtUpdateMessage.Text
    txtUpdateName.Text = ""
    txtUpdateMessage.Text = ""
    End Sub

Сначала обновляется сообщение с идентификатором, хранящимся в переменной сеанса. Обратите внимание, что мы присоединяемся к существующей дискуссии. Также не забудьте о необходимости добавить в текст HTML-теги:

    DBUpdate.CommandText - "Update Messages set " _
    & MessageText - Convert(varchar(5000), MessageText) " _
    &"+ '<br>Ваедено: " _
    & Replace(txtUpdateName.Text, "'", "''»)
    & "<Ьг>Дата: " & Now() & "<br>" _ ~~
    & Replace (txtUpdateMessage.Text, "'", »"») _
    &, "' Where MessagelD - " _
    & Session("CurrentMessagelD")

Объект Command связывается с базой данных через объект Connection:

    DBUpdate.Connection - DBConn
    DBUpdate.Connection.Open

После этого текущее сообщение обновляется:

    DBUpdate. ExecxiteNonQuery ()

и отображается с помощью элемента управления Label:

    IblMessage.Text = IblMessage.Text _
    & "<br>Введено: " _
    & txtUpdateName.Text _
    & "<Ьг>Дата: " & Now() & "
    " _
    & txtUpdateMessage.Text

Теперь нужно очистить элементы управления TextBox, использованные посетителями:

    txtUpdateName.Text = ""
    txtUpdateMessage.Text = ""

Еще одна процедура на этой странице запускается, когда посетитель нажимает кнопку Добавить дискуссию. Она помещает созданную им дискуссию в базу данных, обновляет содержимое элемента DropDownList, а затем отображает исходное сообщение дискуссии:

    Sub AddThread_Click(Sender as Object, E As EventArgs)
    Dim DBConn as OleDbConnection
    Dim DBInsert As New OleDbCommand
    Dim DBCommand As OleDbDataAdapter
    Dim DSPageData as New DataSet
    DBConn - New OleDbConnection("Provider=sqloledb;" _
    & "seryer=localhost;" _
    & "Initial Catalog=INETC7;"
    & "User Id=sa;"
    & "Password=yourpassword;")
    DBInsert.CommandText = "Insert Into Messages " _
    & "(MessageTitle, MessageText) values (" _ '
    & "'" & Replace (txtAddTitle. Text, "'", "''")_
    & "', 'Введено: " _
    & Replace (txtAddName. Text, "'", "''")
    & "<Ьг>Дата: " & Now() & ",<br>" _
    & Replace(txtAddMessage.Text, "'", """) & "' ) "
    DBInsert.Connection = DBConn
    DBInsert.Connection.Open
    DBInsert.ExecuteNonQuery()
    txtAddTitle.Text = ""
    .txtAddName.Text = ""
    txtAddMessage.Text = ""
    DBCommand = 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(0).Item("MessageID") ,
    IblTitle.Text = "Доска сообщений — " _
    & DSPageData.Tables("CurrentMessage"). _
    Rows(O).Item("MessageTitle")
    IblMessage.Text = DSPageData.Tables("CurrentMessage"). _
    Rows(O) .ItemC'MessageText")
    DBCommand = New OleDbDataAdapter _
    ("SELECT MessagelD, MessageTitle " _
    & "from Messages " _
    & "Order By MessageTitle", DBConn)
    DBCommand.Fill(DSPageData, _
    "Messages")
    ddlMessages.DataSource = _
    DSPageData.Tables("Messages").DefaultView
    ddlMessages.DataBind()
    End Sub

Hosted by uCoz