Login
Предложите структуру данных
NEW 20.02.13 19:48
Не понял, разве это не форма ввода/вывода данных?
in Antwort Murr 20.02.13 19:18
В ответ на:
Дана форма. На форме лежат блоки полей
Дана форма. На форме лежат блоки полей
В ответ на:
а какой-нибудь веб-сервисе с отдачей представляемого ХМЛа
а какой-нибудь веб-сервисе с отдачей представляемого ХМЛа
Не понял, разве это не форма ввода/вывода данных?
NEW 20.02.13 19:55
in Antwort Murr 20.02.13 19:22
NEW 20.02.13 20:25
in Antwort AlexNek 20.02.13 19:48
Не понял, разве это не форма ввода/вывода данных
------
Она самая. Просто ты не задумался откуда там данные и сколько их...
Я вот сейчас сгенерировал приложение... а оно не пошло... даже не компилируется...
Причина - прозаическая - кусок шаблона используется в :
- форме представления единичной записи
- форме представления многих записей
- отдельном контроле для встраивания в другие формы
- может еще где - не все проверял...
не знал, не учел - надо фиксить...
Эээ... Подумай чуток над тем, для чего может требоваться встраиваемый контрол и что получится в результате...
------
Она самая. Просто ты не задумался откуда там данные и сколько их...
Я вот сейчас сгенерировал приложение... а оно не пошло... даже не компилируется...
Причина - прозаическая - кусок шаблона используется в :
- форме представления единичной записи
- форме представления многих записей
- отдельном контроле для встраивания в другие формы
- может еще где - не все проверял...
не знал, не учел - надо фиксить...
Эээ... Подумай чуток над тем, для чего может требоваться встраиваемый контрол и что получится в результате...
NEW 20.02.13 20:27
in Antwort Tomasson 20.02.13 19:55
NEW 20.02.13 20:56
in Antwort Murr 20.02.13 20:27
ты сначала проблему опиши так, чтобы она была понятна ;-)
NEW 20.02.13 22:44
in Antwort Tomasson 20.02.13 20:56
Ну давай на пальцах...
Дана Веб-страница или Вин-форма...
На странце/форме в виде блоков размещены управлляющие элементы - лэйблочки, инпуты, картинки и т.п.
Когда все елементы в блоке невидимы - необходимо очистить (сделать доступным для размещения других
элемнтов) занимаемое ими место.
Вопрос - Какая структура данных позволит принять решение об освобождении блока за минимальное
количество операций?
Для вкусности - решение должно быть применимо как на серверной части, так и на клиенте...
Дана Веб-страница или Вин-форма...
На странце/форме в виде блоков размещены управлляющие элементы - лэйблочки, инпуты, картинки и т.п.
Когда все елементы в блоке невидимы - необходимо очистить (сделать доступным для размещения других
элемнтов) занимаемое ими место.
Вопрос - Какая структура данных позволит принять решение об освобождении блока за минимальное
количество операций?
Для вкусности - решение должно быть применимо как на серверной части, так и на клиенте...

NEW 20.02.13 23:01
in Antwort Murr 20.02.13 22:44
речь о структуре, которая содержит значения (block, controls), или о структуре, которая содержит значения (controlID, visibility)?
NEW 20.02.13 23:11
in Antwort Tomasson 20.02.13 23:01
А это аккурат тебе решать - все, что требуется - чтобы не было ненужных действий...
Сценарий вида - Я "убил" последний видимый элемент - блок удалился... без сканирования всех елементов...
Одно... даже два.. из возможных решений Я могу написать... но думаю, что есть что-нибудь еще...
Сценарий вида - Я "убил" последний видимый элемент - блок удалился... без сканирования всех елементов...
Одно... даже два.. из возможных решений Я могу написать... но думаю, что есть что-нибудь еще...
NEW 20.02.13 23:26
in Antwort Murr 20.02.13 23:11
Тогда имеет смысл ввести еще структуру (blockID, visibility). Но не это главное.
Насколько я понял, у тебя основное действие над структурой - это считывание значений, а не их изменение. Тогда структура выбрана правильно. Самое быстрое считывание у Dictionary<TKey, TValue>
Насколько я понял, у тебя основное действие над структурой - это считывание значений, а не их изменение. Тогда структура выбрана правильно. Самое быстрое считывание у Dictionary<TKey, TValue>
В ответ на:
Do you need fast searches and retrieval of information?
ListDictionary is faster than Hashtable for small collections (10 items or fewer). The Dictionary<TKey, TValue> generic class provides faster lookup than the SortedDictionary<TKey, TValue> generic class. The multi-threaded implementation is ConcurrentDictionary<TKey, TValue>. ConcurrentBag<T> provides fast multi-threaded insertion for unordered data. For more information about both multi-threaded types, see When to Use a Thread-Safe Collection.
=========================
The Dictionary<TKey, TValue> generic class provides a mapping from a set of keys to a set of values. Each addition to the dictionary consists of a value and its associated key. Retrieving a value by using its key is very fast, close to O(1), because the Dictionary<TKey, TValue> class is implemented as a hash table.
Note: The speed of retrieval depends on the quality of the hashing algorithm of the type specified for TKey.
Do you need fast searches and retrieval of information?
ListDictionary is faster than Hashtable for small collections (10 items or fewer). The Dictionary<TKey, TValue> generic class provides faster lookup than the SortedDictionary<TKey, TValue> generic class. The multi-threaded implementation is ConcurrentDictionary<TKey, TValue>. ConcurrentBag<T> provides fast multi-threaded insertion for unordered data. For more information about both multi-threaded types, see When to Use a Thread-Safe Collection.
=========================
The Dictionary<TKey, TValue> generic class provides a mapping from a set of keys to a set of values. Each addition to the dictionary consists of a value and its associated key. Retrieving a value by using its key is very fast, close to O(1), because the Dictionary<TKey, TValue> class is implemented as a hash table.
Note: The speed of retrieval depends on the quality of the hashing algorithm of the type specified for TKey.
NEW 20.02.13 23:39
in Antwort Tomasson 20.02.13 23:26
Тогда имеет смысл ввести еще структуру (блоцкИД, висибилиты).
------
А как это должно работать??? в вебе?
------
А как это должно работать??? в вебе?

NEW 20.02.13 23:47
С чего это должно меня интересовать?
Форма на экране просто не может иметь "бесконечное" число данных, хотя если ты их собираешься скроллировать на клиенте....
У нас требования сильно разные. Для чего вам может требоваться встроенный контрол, думаю никто не додумается в здравом уме
А вообще я в подобных случаях пользую виртуальный грид или проперти грид (только не MS!) Вся динамика определяется состоянием данных автоматом.
in Antwort Murr 20.02.13 20:25
В ответ на:
Просто ты не задумался откуда там данные и сколько их
Просто ты не задумался откуда там данные и сколько их
С чего это должно меня интересовать?
Форма на экране просто не может иметь "бесконечное" число данных, хотя если ты их собираешься скроллировать на клиенте....

В ответ на:
Подумай чуток над тем, для чего может требоваться встраиваемый контрол и что получится в результате
Подумай чуток над тем, для чего может требоваться встраиваемый контрол и что получится в результате
У нас требования сильно разные. Для чего вам может требоваться встроенный контрол, думаю никто не додумается в здравом уме

А вообще я в подобных случаях пользую виртуальный грид или проперти грид (только не MS!) Вся динамика определяется состоянием данных автоматом.
NEW 20.02.13 23:53
а в чем проблема?
где вы вообще храните информацию о visibility?
in Antwort Murr 20.02.13 23:39
В ответ на:
А как это должно работать??? в вебе?
А как это должно работать??? в вебе?
а в чем проблема?
где вы вообще храните информацию о visibility?
NEW 21.02.13 00:00
in Antwort AlexNek 20.02.13 23:47
Форма на экране просто не может иметь "бесконечное" число данных
-----
Зато ничто не мешает ей их динамически подгружать... Понимаю - каша... жуткая каша даже для прямой имплементации, а уж в генерации... Ну и что - приходится есть...
никто не додумается в здравом уме
-----
Ну не встроенный, а встраиваемый... включая динамическое встраивание...
Но ты прав - никто, в здравом уме, не будет такой фигней маятся... но Я, по земным меркам, уже давно не в здравом - даже в паспорте написали - с ДРУГОЙ планеты...
-----
Зато ничто не мешает ей их динамически подгружать... Понимаю - каша... жуткая каша даже для прямой имплементации, а уж в генерации... Ну и что - приходится есть...
никто не додумается в здравом уме
-----
Ну не встроенный, а встраиваемый... включая динамическое встраивание...
Но ты прав - никто, в здравом уме, не будет такой фигней маятся... но Я, по земным меркам, уже давно не в здравом - даже в паспорте написали - с ДРУГОЙ планеты...

21.02.13 00:10
ну сами данные подгружать еще да, но не layout ведь.
А делать динамический layout это ведь брр, да и ты об этом ничего не писал.
in Antwort Murr 21.02.13 00:00
В ответ на:
ничто не мешает ей их динамически подгружать
ничто не мешает ей их динамически подгружать
ну сами данные подгружать еще да, но не layout ведь.
А делать динамический layout это ведь брр, да и ты об этом ничего не писал.
NEW 21.02.13 00:10
in Antwort Murr 20.02.13 22:44
не уверен поможет ли тебе это, так как не знаю вообще что ты там пилишь: в ассоциативном массиве. возьми и засунь к примеру в JSON, не ошибешься. тебе и на клиентской части и на серверной будет просто обращаться к этим данным.
NEW 21.02.13 00:14
in Antwort Tomasson 20.02.13 23:53
где вы вообще храните информацию о висибилиты?
-----
Сейчас - загружается в контролы... из базы данных с учетом условий и значений по умолчанию... если Я помню правильно - там полтора десятка методов, которые разбираются как это делать с теми контролами которые там могут случится... и менять мне их никто не даст...
Но это - статика, начальные значения... То, что я делаю - динамика - вбили в поле строку с 20 буквами "а" будем показывать одно... а с 21 - другое... а не дай боже это Пал-Палыч - вообще третье...
а в чем проблема?
-----
В том что надо по одному экземпляру на сессию... И либо слать на клиента, либо в сессию... оба варианта - не годятся...
-----
Сейчас - загружается в контролы... из базы данных с учетом условий и значений по умолчанию... если Я помню правильно - там полтора десятка методов, которые разбираются как это делать с теми контролами которые там могут случится... и менять мне их никто не даст...
Но это - статика, начальные значения... То, что я делаю - динамика - вбили в поле строку с 20 буквами "а" будем показывать одно... а с 21 - другое... а не дай боже это Пал-Палыч - вообще третье...
а в чем проблема?
-----
В том что надо по одному экземпляру на сессию... И либо слать на клиента, либо в сессию... оба варианта - не годятся...

NEW 21.02.13 00:19
in Antwort AlexNek 21.02.13 00:10
это ведь брр....
-----
Ну это по первому разу... А когда его делать обучен автомат - уже не брр, а кайф...
но не лаёут ведь.
------
Ты код, генерируемый Телериком, смотрел?
-----
Ну это по первому разу... А когда его делать обучен автомат - уже не брр, а кайф...

но не лаёут ведь.
------
Ты код, генерируемый Телериком, смотрел?
NEW 21.02.13 00:24
in Antwort L@nixx 21.02.13 00:10
в ассоциативном массиве.
-----
Так вопрос именно в том - что именно туда надо засунуть? - перекинуть туда-сюда у меня проблемы никогда не было... а вот нужно ли перекидывать и можно ли этого избежать - тут думать надо...
-----
Так вопрос именно в том - что именно туда надо засунуть? - перекинуть туда-сюда у меня проблемы никогда не было... а вот нужно ли перекидывать и можно ли этого избежать - тут думать надо...

NEW 21.02.13 00:34
in Antwort Murr 21.02.13 00:24
ну все зависит от того в чем у тебя front идет. откуда я могу это знать, ты спросил какой тип данных я и ответил. :)
NEW 21.02.13 17:47
Хочешь сказать что layout формы меняется в зависимости от введенных данных? И шеф считает это крутым решением?
in Antwort Murr 21.02.13 00:14
В ответ на:
То, что я делаю - динамика - вбили в поле строку с 20 буквами "а" будем показывать одно... а с 21 - другое... а не дай боже это Пал-Палыч - вообще третье...
То, что я делаю - динамика - вбили в поле строку с 20 буквами "а" будем показывать одно... а с 21 - другое... а не дай боже это Пал-Палыч - вообще третье...
Хочешь сказать что layout формы меняется в зависимости от введенных данных? И шеф считает это крутым решением?
