Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Merge меняет значение, хотя состояние unchanged, Слияние двух dataset работает странно 
:(
    Опции темы
Karrde
Дата 18.7.2013, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 11.11.2006

Репутация: нет
Всего: нет



Доброго времени суток. Пытаюсь смержить два объекта, наследованных от dataset. 
Код

dataSetFromDisk.Merge(dataSet);

Одна из строк dataSet имеет состояние Unchanged, аналогичная строка dataSetFromDisk - состояние Added. После слияния значение в dataSetFromDisk меняется на значение, указанное в dataSet. Так и должно быть? Как этого можно избежать?

Это сообщение отредактировал(а) Karrde - 18.7.2013, 12:46
PM MAIL   Вверх
dzaraev
Дата 18.7.2013, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 12.1.2013

Репутация: нет
Всего: 1



Не часто работал с DataSet, но судя по описанию метода DataSet.Merge на MSDN, это видимо так и должно быть:
Цитата

...When merging a new source DataSet into the target, any source rows with a DataRowState value of Unchanged, Modified, or Deleted are matched to target rows with the same primary key values. Source rows with a DataRowState value of Added are matched to new target rows with the same primary key values as the new source rows.

Пусть меня поправят, если заблуждаюсь.
--------------------
Если вопрос решён - помечайте тему.  
PM MAIL   Вверх
Karrde
Дата 24.7.2013, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 11.11.2006

Репутация: нет
Всего: нет



Не уверен, что решил правильно, но тем не менее у меня заработало. Сначала получил DataSet изменений с помощью GetChanges(). А потом уже его смержил с dataSetFromDisk - получилось ровно то, что я хотел
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1020 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.