Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Domain Model. Откат изменений / 6 сообщений из 6, страница 1 из 1
07.10.2009, 14:22
    #36237497
Antoshka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Domain Model. Откат изменений
Есть модель (класс). В модели много разных свойств, отображаемых на таблицу в источнике данных. Возник такой вопрос: как правильно обработать отмену редактирования, а ещё точнее, где хранить старые значения?
...
Рейтинг: 0 / 0
07.10.2009, 17:42
    #36238155
Dmitry Sukhovilin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Domain Model. Откат изменений
Старые значения в таблице с историей. Откатыватся от туда же.
Всегда можно узнать последнее и предпоследнее изменение.
...
Рейтинг: 0 / 0
10.10.2009, 00:25
    #36243424
Antoshka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Domain Model. Откат изменений
Сорри, что некорректно сформулировал задачу. Итак, имеется:
1) класс "Invoice" со своими полями и коллекцией ссылок на "InvoiceDetail". Никаких таблиц и датасетов на этом уровне нет;
2) имеетсе форма редактирования накладной с кнопками "ОК" и "Отмена".
Меня интересует, как правильно организовать хранение промежуточных данных, появляющихся в процессе редактирования. Например, пользователь ввёл десяток новых строк в детайл, удалил пару старых, поменял одно поле в шапке... А потом взял и нажал отмена. Естественно, что объект после этого должен вернуться в состояние до редактирования. А это возможно с помощью:
1) перечитывания его из источника данных;
2) хранения исходных значений в самом объекте - усложнение объекта;
3) хранения неподтверждённых изменений в каких-то других вспомогательных объектах;
4) чего-то ещё...

Хочу узнать у уважаемых камрадов, кто какое решение использует
...
Рейтинг: 0 / 0
11.10.2009, 21:40
    #36244566
Siemargl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Domain Model. Откат изменений
Транзакции, блин
...
Рейтинг: 0 / 0
12.10.2009, 22:19
    #36246699
Antoshka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Domain Model. Откат изменений
SiemarglТранзакции, блин Какие транзакции, до источника данных ещё изменения не дошли. Вопрос, в том, как и где хранить промежуточные данные до подтверждения или отмены редактирования полей объекта в форме
...
Рейтинг: 0 / 0
20.10.2009, 20:02
    #36262942
Kicel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Domain Model. Откат изменений
Код: plaintext
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.
    [Serializable]
    public class Order 
	{
        .........................
        public virtual void BeginEdit()
        {
                BinaryFormatter formatter = new BinaryFormatter();

                using (MemoryStream stream = new MemoryStream())
                {
                    formatter.Serialize(stream, this.OrderItems);
                    stream.Position = 0;
                    originalState = new byte[stream.Length];
                    stream.Read(originalState, 0, (int)stream.Length);
                }
        }

        public virtual void CancelEdit()
        {
                if (originalState != null)
                {
                        BinaryFormatter formatter = new BinaryFormatter();

                        using (MemoryStream stream = new MemoryStream())
                        {
                            stream.Write(originalState, 0, originalState.Length);
                            stream.Position = 0;
                            this.OrderItems = (IList<OrderItem>)formatter.Deserialize(stream);

                            originalState = null;
                        }
                    
                }
        }
................
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Domain Model. Откат изменений / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]