Давайте назовем эти вещи такими, какие они есть.Это методы страницы, и они должны быть объявлены статическими (C #) / Shared (VB).
Причина, по которой эти методы страницы не могут получить доступ к переменным страницы: вы должны думать об этом как о клиенте и сервере.Сервер получает запрос от клиента.Сервер подает страницу клиенту, выполняя любую «полировку» на сервере.Как только сервер отправляет данные клиенту, сервер забывает, что «отполированный» контент даже существует.Ваша страница на стороне клиента теперь сирота.Сервер слишком занят, извергая все больше сирот.Твой сервер такая шлюха.У него нет времени, чтобы не отставать от каждого экземпляра страницы, которую он рождает, особенно если у вас есть миллионы людей, обращающихся к вашему серверу каждый день / час.Клиент обновляет серверную память в .Net, как правило, с помощью таких механизмов, как обратные передачи, viewstate и т. Д. В противном случае сервер скажет: «Нет, вы не мой ребенок».
Входит ajax и методы страницы.Ajax собирает ключевую информацию, необходимую серверу для выполнения базовой обработки, требуемой приложением, и отправляет обратно информацию.Средой коммуникации для этого обычно является JSON для методов Page.Таким образом, теперь сервер становится просто калькулятором или хранилищем информации, но клиент все еще должен знать, какую информацию отправлять, как ее отправлять, чтобы сервер что-то сделал для вас.Это объяснение непрофессионала для вещей.