Нужно поворачивать текст в ярлыке каждый раз, когда пользователь обновляет страницу - PullRequest
0 голосов
/ 20 августа 2009

У меня есть ярлык с именем lblMessage. Данные сообщения сохраняются в БД SQL Server 2005. В моей таблице у меня есть идентификатор сообщения, а затем 4 строки с моим идентификатором сообщения. Сообщение 1, Сообщение 2, Сообщение 3 и Сообщение 4.

Я хочу, чтобы мое lblMessage проходило цикл каждый раз, когда пользователь обновляет свой браузер, поэтому, когда он обновляет его один раз, следующим сообщением будет Сообщение 2 ..... и т. Д. И т.

Как мне это сделать в VB.NET или C #?

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 20 августа 2009

VB.NET

Private Shared messageNumber as Integer

Public Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Select Case messageNumber
        Case 0
            lblMessage.Text = MESSAGE_1
        Case 1
            lblMessage.Text = MESSAGE_2
        Case 2
            lblMessage.Text = MESSAGE_3
        Case 3
            lblMessage.Text = MESSAGE_4
    End Select
    messageNumber = (messageNumber + 1) Mod 4
End Sub

C #

private static int messageNumber;

public void Page_Load(object sender, System.EventArgs e)
{
    switch (messageNumber) {
        case 0:
            lblMessage.Text = MESSAGE_1;
            break;
        case 1:
            lblMessage.Text = MESSAGE_2;
            break;
        case 2:
            lblMessage.Text = MESSAGE_3;
            break;
        case 3:
            lblMessage.Text = MESSAGE_4;
            break;
    }
    messageNumber = (messageNumber + 1) % 4;
}
1 голос
/ 20 августа 2009

Вы не описали схему таблицы в своем вопросе, поэтому я не знаю, содержит ли ваша таблица сообщений что-либо кроме идентификатора сообщения и сообщения. Если вы можете добавить еще один столбец, вы можете назвать его как последовательность и сделать его крошечным.

Теперь при получении сообщения вам необходимо указать как идентификатор сообщения, так и порядковый номер.

Каждый раз, когда вы обновляете, вы увеличиваете порядковый номер и получаете его по модулю до 4 (так что последовательность всегда равна 0, 1, 2 или 3).

что-то вроде:

sequence = sequence++ % 4;
lblMessage.Text = fetchMessage(MessageID, sequence);

и fetchMessage просто выполняет ваш запрос:

Select  message
  From  tbl_Messages
  Where messageID = @messageID
        and sequence = @sequence
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...