|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Собственно вопрос в том какое средство использовать для хранения данных выборки с сервера. До этого в WPF как-то больше работал с ObservableCollection. С другой стороны ADO.NET возвращает рез-т в DataTable (отключенный уровень), помещенные в DataSet. Знаю, что WPF будет работать и с тем и другим. И всё же, есть ли какие-то плюсы/минусы у того и другого. Поделитесь опытом. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2012, 20:49 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Только ObservableCollection. wpf делает связывание данных не напрямую, а через CollectionView, если коллекция не поддерживает нужные интерфейсы, то они эмулируются, что влечет лишнее расходование ресурсов,снижение быстродействия и утечки памяти, если привязка не одностороняя. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2012, 10:47 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVaТолько ObservableCollection. wpf делает связывание данных не напрямую, а через CollectionView, если коллекция не поддерживает нужные интерфейсы, то они эмулируются, что влечет лишнее расходование ресурсов,снижение быстродействия и утечки памяти, если привязка не одностороняя. А как быть с отслеживанием изменённых строк/данных ? DataTable это делает. А ObservableCollection ? То что у неё есть события на изменения (добавление/уделени/изменение) это я знаю, а вот поддерживает ли она хранение изменённых данных/удаённых и т.д. ? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2012, 13:11 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Чтобы не гадать есть документация. ObservableCollection реализует интерфейсы: INotifyCollectionChanged, INotifyPropertyChanged dataset - это не вариант для wpf ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2012, 14:09 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVadataset - это не вариант для wpf да и для остального он сомнителен ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2012, 17:04 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
ИзопропилSeVadataset - это не вариант для wpf да и для остального он сомнителен глубокая мысль ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2012, 19:22 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
iscrafmглубокая мысль да. Причёи инвалид скорее не сам датасет, а датаадаптер ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2012, 19:56 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Изопропилiscrafmглубокая мысль да. Причёи инвалид скорее не сам датасет, а датаадаптер никакой инвалидности не замечено. На фоне того, что по сути одно и тоже, только с готовыми спец.методами, выглядит мысль как то немного странно, глубоко. В чем суть? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2012, 23:17 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Изопропилiscrafmглубокая мысль да. Причёи инвалид скорее не сам датасет, а датаадаптер А что вы тогда предлагаете взамен DataAdapter ? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2012, 00:53 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
thunder2А что вы тогда предлагаете взамен DataAdapter ? Вы считаете, что нет достойных альтернатив? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2012, 23:17 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVadataset - это не вариант для wpf а мужики-то и не знают! http://msdn.microsoft.com/en-us/library/aa480226.aspx ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 13:48 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVaТолько ObservableCollection. wpf делает связывание данных не напрямую, а через CollectionView, если коллекция не поддерживает нужные интерфейсы, то они эмулируются, что влечет лишнее расходование ресурсов,снижение быстродействия и утечки памяти, если привязка не одностороняя.Да ладно. "Родной" компаратор ListCollectionView для сортировки использует рефлекшен ( тут спасает традиционное решение - свой компаратор с доступом через Emit ). Для датабиндинга тоже используется рефлекшен. О какой производительности ты говоришь? Ничего там не "эмулируется". Просто другая реализация ICollectionView (BindingListCollectionView), не более того. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 14:28 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVa... и утечки памяти. Эти чтоли утечки? Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Время жизни CollectionView такое же как у самого списка. Умер список - вместе с ним умер его CollectionView. Схерали возникнет утечка? Автор гонет... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 14:45 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
ИзопропилSeVadataset - это не вариант для wpf да и для остального он сомнителенDataTable удобен если: 1. На этапе компиляции не известен набор колонок, или по каким-то причинам мы хотим создать их динамически в рантайме. Зачем городить свою структуру данных если есть готовая. 2. "Халявное" отслеживание изменений, accept/reject и т. п. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 14:53 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Алексей КDataTable удобен если: 1. На этапе компиляции не известен набор колонок, или по каким-то причинам мы хотим создать их динамически в рантайме. Зачем городить свою структуру данных если есть готовая. 2. "Халявное" отслеживание изменений, accept/reject и т. п. +1 + если набор колнок известен - можно юзать типизированный DataSet + готовые Related DataTables ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 15:01 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Шайтан+ если набор колнок известен - можно юзать типизированный DataSetТут уже кому как нравится. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 15:26 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Алексей КВремя жизни CollectionView такое же как у самого списка. Умер список - вместе с ним умер его CollectionView. Схерали возникнет утечка? Автор гонет... Гонят горлопаны, которые слышат звон, но не знают, где он. Перечитай мой пост ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 17:15 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVaГонят горлопаны, которые слышат звон, но не знают, где он. Перечитай мой постПример кода, демонстрирующий утечку памяти в BindingListCollectionView будет? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 17:44 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Алексей КSeVaГонят горлопаны, которые слышат звон, но не знают, где он. Перечитай мой постПример кода, демонстрирующий утечку памяти в BindingListCollectionView будет? Говнокопатель во view до сих пор не удосужился узнать косяки wpf? Погугли сам на предмет утечек памяти, давно пора, а то так джуниором и останешься ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 19:55 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVa Тебе вопрос понятен? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2012, 21:22 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVaГовнокопатель во view до сих пор не удосужился узнать косяки wpf? Погугли сам на предмет утечек памяти, давно пора, а то так джуниором и останешьсяТы чё такой злобный? С тобой нормально разговаривают. Если есть чем поделиться - говори, приводи факты, ссылки. А пустозвонства тут не надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 05:48 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Алексей КSeVaГовнокопатель во view до сих пор не удосужился узнать косяки wpf? Погугли сам на предмет утечек памяти, давно пора, а то так джуниором и останешьсяТы чё такой злобный? С тобой нормально разговаривают. Если есть чем поделиться - говори, приводи факты, ссылки. А пустозвонства тут не надо. Если будешь продолжать дальше в стиле известного всем персонажа, то на все приветы будут соответствующие ответы. В 4.0, кажется, баг с осутствием INotifyCollectionChanged пофиксили, остался с INotifyPropertyChanged . Описывать сценарии, когда с List'ом будут утечки нужно или сам догадаешься? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 09:37 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVaЕсли будешь продолжать дальше в стиле известного всем персонажа, то на все приветы будут соответствующие ответы. В 4.0, кажется, баг с осутствием INotifyCollectionChanged пофиксили, остался с INotifyPropertyChanged . Описывать сценарии, когда с List'ом будут утечки нужно или сам догадаешься?DataRowView реализует INotifyPropertyChanged. В этом случае подписка происходит через PropertyChangedEventManager. Так что эта проблема к DataSet как таковому не имеет никакого отношения. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 12:55 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
Алексей КSeVaЕсли будешь продолжать дальше в стиле известного всем персонажа, то на все приветы будут соответствующие ответы. В 4.0, кажется, баг с осутствием INotifyCollectionChanged пофиксили, остался с INotifyPropertyChanged . Описывать сценарии, когда с List'ом будут утечки нужно или сам догадаешься?DataRowView реализует INotifyPropertyChanged. В этом случае подписка происходит через PropertyChangedEventManager. Так что эта проблема к DataSet как таковому не имеет никакого отношения. Сценарий не угадан. INotifyPropertyChanged нужен еще для свойств самой коллекции. Ты только дал подтверждение тому, что возникают лишние накладные расходы на ровном месте, тк для каждой строки создается отдельный view. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2012, 20:01 |
|
ObservableCollection vs DataSet ?
|
|||
---|---|---|---|
#18+
SeVaСценарий не угадан. INotifyPropertyChanged нужен еще для свойств самой коллекции.Какой-то редкий случай. Надо просто помнить об этом и этого достаточно. Из-за этого не применять DataTable когда он удобен глупо. SeVaТы только дал подтверждение тому, что возникают лишние накладные расходы на ровном месте, тк для каждой строки создается отдельный view.Который не хранит никаких данных, является тупо передастом для DataRow. По сравнению со всем остальным это мелочи. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2012, 05:49 |
|
|
start [/forum/search_topic.php?author=John+Connor&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
31ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 2782ms |
total: | 2928ms |
0 / 0 |