Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > ASP.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.03.2011, 22:06   #1
newStudent
Пользователь
 
Аватар для newStudent
 
Регистрация: 07.07.2010
Сообщений: 44
Вопрос [ASP.NET C#] Классы, Коллекции

Код:
public partial class _Default : System.Web.UI.Page
    {
        Clients cl = new Clients();
        protected void Page_Load(object sender, EventArgs e)
        {
            cl.AddClient(new Client("Иванов", "9001", new DateTime(1990, 12, 12)));
        }

        protected void InputButton_Click(object sender, EventArgs e)
        {
            Client tmp = new Client("Пак", "9003", new DateTime(1989, 02, 14));
            cl.AddClient(tmp);
        }

        protected void OutputButton_Click(object sender, EventArgs e)
        {
            foreach (Client c in cl)
            {
                Response.Write("Имя=" + c.name + " ");
                Response.Write("Паспорт=" + c.passport + " ");
                Response.Write("Возраст=" + c.age);
                Response.Write("</br>");
            }
        }
    }
Имеется класс Client и класс Clients, поле которого представляет собой коллекцию объектов класса Client.
Клиент с фамилией "Иванов" вводится в коллекцию без проблем.
Нужно, чтобы при нажатии кнопки InputButton вводился очередной клиент с фамилией "Пак".
При нажатии кнопки вывода, выводится только "Иванов".

В чем моя ошибка? Может я неправильно ввожу клиента через кнопку?
newStudent вне форума Ответить с цитированием
Старый 13.03.2011, 23:47   #2
val_nnm
Форумчанин
 
Регистрация: 18.10.2009
Сообщений: 185
По умолчанию

К сожалению, я не силён в ASP.NET, но вы видимо не сохраняете состояние страницы. Существует несколько способов сохранить состояние. Самый простой через ViewState
Примерно так.
Код:
        protected void Page_Load(object sender, EventArgs e)
        {
            If (ViewState["Clients"]==null)
            {
                 cl.AddClient(new Client("Иванов", "9001", new DateTime(1990, 12, 12)));
                ViewState["Clients"] = cl;
             } else {
                cl = (Clients)ViewState["Clients"];
             }
        }


        protected void InputButton_Click(object sender, EventArgs e)
        {
            Client tmp = new Client("Пак", "9003", new DateTime(1989, 02, 14));
            cl.AddClient(tmp);
            ViewState["Clients"] = cl;
        }
Ну естественно предполагается что Clients допускает сериализацию.

Если где ошибся, извините (повторюсь что нет опыта ASP.NET)
На С# пишу лучше чем на русском.
"У меня правильнописание хромает. Оно хорошее, но почему-то хромает."
val_nnm вне форума Ответить с цитированием
Старый 14.03.2011, 18:46   #3
newStudent
Пользователь
 
Аватар для newStudent
 
Регистрация: 07.07.2010
Сообщений: 44
По умолчанию

как добавить сериализацию?
newStudent вне форума Ответить с цитированием
Старый 14.03.2011, 18:55   #4
newStudent
Пользователь
 
Аватар для newStudent
 
Регистрация: 07.07.2010
Сообщений: 44
По умолчанию

Выскочила следующая ошибка:
см. вложение
Изображения
Тип файла: jpg 1.jpg (44.2 Кб, 126 просмотров)
newStudent вне форума Ответить с цитированием
Старый 14.03.2011, 19:14   #5
KobolD
Форумчанин
 
Регистрация: 10.06.2010
Сообщений: 239
По умолчанию

Цитата:
Сообщение от newStudent Посмотреть сообщение
как добавить сериализацию?
Перед объявлением класса пишем [Serializable()]
Чтобы слова не расходились с делом, нужно молчать и ничего не делать.
KobolD вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаленный SQL-сервер Ado.Net + .Net remoting + Asp .Net gammaray Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 2 22.11.2010 17:36
Вопрос к тем, кто имеет представление о PHP, JSP, ASP, ASP.NET child_of_july Помощь студентам 0 07.06.2008 00:25