Вы пытаетесь адаптировать методы форм Windows к веб-страницам. Это не сработает. В частности, ваша основная функция здесь не только бессмысленна, но и активно вредна. Делая Main статической, это означает, что она не может получить доступ к каким-либо экземплярам данных элемента или свойствам страницы, если они тоже не являются статическими.
Почему вы даже хотите пометить это как статическое? Что ты думаешь? Потому что это статично в приложениях форм Windows?
Вы обычно используете статические методы только тогда, когда эти методы не выполняют никаких функций изменения состояния. Хороший способ получить представление о том, как обычно используются статические методы, - это просмотреть документацию по распространенным классам .NET, таким как string, и посмотреть, какие функции они определяют как статические.
Что нужно помнить о веб-страницах, так это то, что они основаны на спросе и не имеют состояния. В Windows Forms или консольных приложениях вы «запускаете» программу, и она продолжает работать, пока вы не выйдете. Веб-приложения существуют только в контексте одного запроса, хотя сеансы обеспечивают некоторую непрерывность между запросами.
Итак, суть в том, что каждый сеанс - это его собственная вселенная. Он начинается, останавливается и заканчивается каждый раз, когда запрашивается страница. У вас есть только данные сеанса, чтобы связать отдельные запросы.
Что касается многопользовательского ... все веб-приложения являются многопользовательскими. Это то, что веб-среда разработана вокруг. Два или более человека могут одновременно получать доступ к веб-страницам, и вы никак не можете это остановить.