Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
 
Ivanjs
0 / 0 / 0
Регистрация: 17.04.2018
Сообщений: 181
1

Хранение состояния в ViewState

22.06.2018, 11:07. Просмотров 412. Ответов 0
Метки нет (Все метки)

Объясните, пожалуйста как при Counter += 1 должно увеличится исходное значение ViewState в выражении ViewState[key] = value, если key это строчный элемент и использовано =, а не +=. Также не ясно для чего задействовано key, т. к. оно не изменяется в программе.

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="03_ViewStateUsing.aspx.cs" Inherits="StateManagment._01_ViewState.ViewStateUsing2" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>ViewState #3</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Label ID="CounterLabel" runat="server" Text="0"></asp:Label>
        <br />
        <asp:Button ID="AddOneButton" runat="server" Text="+1" OnClick="AddOneButton_Click" />
        <asp:Button ID="AddTwoButton" runat="server" Text="+2" OnClick="AddTwoButton_Click" />
    </div>
    </form>
</body>
</html>
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
namespace StateManagment._01_ViewState
{
    public partial class ViewStateUsing2 : System.Web.UI.Page
    {
        private const string key = "counter";
        protected int Counter
        {
            get 
            {
                object obj = ViewState[key];
                // Если ViewState хранит требуемый ключ - возвращаем его.
                if (obj != null)
                {
                    return (int)obj;
                }
                // Если ключ отсутствует - устанавливаем значение по умолчанию во ViewState
                else
                {
                    ViewState[key] = 0;
                    return 0;
                }
            }
            set 
            {
                ViewState[key] = value; 
            }
        }
 
        protected void AddOneButton_Click(object sender, EventArgs e)
        {
            Counter += 1;
        }
 
        protected void AddTwoButton_Click(object sender, EventArgs e)
        {
            Counter += 2;
        }
 
        protected void Page_LoadComplete(object sender, EventArgs e)
        {
            CounterLabel.Text = Convert.ToString(Counter);
        }
    }
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2018, 11:07
Ответы с готовыми решениями:

Хранение состояния переменной javascript в Asp.net
Добрый день. Я вызываю функцию javascript через С# Page.RegisterStartupScript(&quot;key&quot;,...

ViewState
Здраствуйте. Обясните пожалуйста что такое ViewState

Функция заполнения ViewState
Создал функцию на странице, которая записывает данные в ViewState: function...

The viewstate is invalid for this page
недавно на сервер установил программу написанную на ASP.NET 3 дня работала нормально а сегодня...

Что-то не так с ViewState (VS2012)
Здравствуйте ! Вот код страницы, на которой динамически создаются кнопки выбора разделов контента....

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.06.2018, 11:07

Как избежать исключения с ViewState
есть веб-форма с полями ввода, которую спаммеры автоматом пытаются отправить серверу. т.к....

Что заменяет ViewState in MVC?
Добрый день Подскажите пожалуйста что заменяет ViewState in MVC? Нужно чтобы после покидания...

Правильное хранение состояния экземпляра класса
Есть WPF-контрол для воспроизведения видео из разных источников (веб, файл или ип-камера). Мне...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru