|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Всем привет. Поможите, плиз. Имеется задача. Есть несколько справочников в БД (Firebird). Принципы работы справочников крайне похожи, но не совсем одинаковы. Мысль: сделать некий шаблон класса справочника. А потом наследуясь от него реализовывать классы для всех справочников. Вопроса два: 1. Правильные ли мысли? 2. Если мысли верные, то на основе чего создать шаблон класса; да еще так сваять, чтобы быстро цеплять к Девовскому гриду. На основе реализации IBindingList получается, но как то коряво и громоздко. На основе Bindinglist<T> грид не цепляет автоматом проперти и т.д. Наверняка есть бест практис. Подскажите - что почитать. P.S. Не хочется ковыряться со всякими XPO, EF и т.п. ( Хочу свой маленький велосипедик:)) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2014, 19:07 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
nnezam, сделай на основе: Код: c# 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 18:29 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
pation, как создать класс БО более или менее понятно. На основе чего создать коллекцию БО? Вот в чем суть вопроса.) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 20:37 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Всё это обобщение справочников - от лукавого. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 20:42 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Я правильно понимаю, что берем и для каждого, например, справочника ваяем свой класс коллекции элементов? Дело в том, что в получившихся классах коллекций ( наследники от BindingList<Dict1>) много одинакового кода... Лень - это же двигатель прогресса)) Вот и хочется что то придумать изящное... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 20:48 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУВсё это обобщение справочников - от лукавого. во-во! +100. А потом будет для каждого справочника по костылю). и в итоге будет супер код с кучей if-else. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 21:43 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУВсё это обобщение справочников - от лукавого. Нет! :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 06:17 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КМСУВсё это обобщение справочников - от лукавого. Нет! :-)О, давайте говнокодом справочниками меряться Мой вариант: Код: c# 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. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 08:19 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Конкретный справочник: Код: c# 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. 36. 37. 38.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 08:24 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANA... говнокодом ...Странное у Вас отношение к результатам своей работы. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 09:39 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANA... говнокодом ...Странное у Вас отношение к результатам своей работы.Здоровая само- и не только критика ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 09:57 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КМСУВсё это обобщение справочников - от лукавого. Нет! :-) А кто сказал, что идентификаторы должны быть интами? :) Может быть вперемешку и как угодно. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 10:18 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУА кто сказал, что идентификаторы должны быть интами?Я сказал! Поощарять бардак не собираюсь. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 10:40 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУА кто сказал, что идентификаторы должны быть интами? :) Может быть вперемешку и как угодно. long + guid :-) - самые частые у меня были. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 10:50 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУАлексей Кпропущено... Нет! :-) А кто сказал, что идентификаторы должны быть интами? :) Может быть вперемешку и как угодно.Дак у него одна база на всю жизнь, у него не может быть ничего, кроме интов :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 11:06 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAМСУпропущено... А кто сказал, что идентификаторы должны быть интами? :) Может быть вперемешку и как угодно.Дак у него одна база на всю жизнь, у него не может быть ничего, кроме интов :)Это хорошо или плохо? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 11:11 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУАлексей Кпропущено... Нет! :-) А кто сказал, что идентификаторы должны быть интами? :) Может быть вперемешку и как угодно. =)) я тут в одной конторе увидел айдюхи: decimal - супер ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 11:22 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
pationМСУпропущено... А кто сказал, что идентификаторы должны быть интами? :) Может быть вперемешку и как угодно. =)) я тут в одной конторе увидел айдюхи: decimal - супер и объяснение гавноглавного кодера : в оракле нет интов ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 11:23 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
pationnnezam, сделай на основе: Код: c# 1. 2. 3. 4. 5. 6.
Я вот до сих не могу понять логику людей, дающих такие названия! Либо DictionaryItem, либо DictIt если уж сокращать так каждое слово :) ! Видел еще аналог SpravItem.. где то в 1с подобном коде.... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 11:24 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
pationpationпропущено... =)) я тут в одной конторе увидел айдюхи: decimal - супер и объяснение гавноглавного кодера : в оракле нет интов ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 11:28 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAпропущено... Дак у него одна база на всю жизнь, у него не может быть ничего, кроме интов :)Это хорошо или плохо?Это нормально :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 11:35 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КМСУА кто сказал, что идентификаторы должны быть интами?Я сказал! Поощарять бардак не собираюсь. В MS SharePoint идентификаторы списков и библиотек инты, в MS Dynamics CRM гуиды. Кого на кол? Arm79long + guid :-) - самые частые у меня были. Да хоть массив байт. Серьезно :) Тот же токен доменной учетной записи. А тут Леша нам впаривает универсальный справочник. Мда, дела... skyANAДак у него одна база на всю жизнь, у него не может быть ничего, кроме интов :) Именно, вот и пытаюсь наставить на путь истинный сбившегося человека Алексей КskyANAпропущено... Дак у него одна база на всю жизнь, у него не может быть ничего, кроме интов :)Это хорошо или плохо? Это дико Но нормально )) pation=)) я тут в одной конторе увидел айдюхи: decimal - супер Тоже норм )) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 11:47 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Если кто-то из присутствующих не владеет элементарными навыками ООП, я не виноват. :-) Guid нужен, чтобы обеспечить уникальность между разными серверами. Необходимость такой уникальности кодов элементов классификаторов сомнительна. Если этого не понимает кто-то из присутствующих, то я не виноват тоже. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:22 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КЕсли кто-то из присутствующих не владеет элементарными навыками ООП, я не виноват. :-) Ути какие мы строгие Алексей КGuid нужен, чтобы обеспечить уникальность между разными серверами. Откуда такое громкое заявление? На нобель идёшь, не меньше )) Алексей КНеобходимость такой уникальности кодов элементов классификаторов сомнительна. Если этого не понимает кто-то из присутствующих, то я не виноват тоже. Гуиды - для кросссерверности! Всем по пиву, ура, товарищи! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:25 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУАлексей КGuid нужен, чтобы обеспечить уникальность между разными серверами. Откуда такое громкое заявление? На нобель идёшь, не меньше ))Ну тогда озвучивай остальные причины, из-за которых требуется делать в БД поле типа Guid: 1. Уникальность между разными серверами. 2. ... 3. ... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:29 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КМСУпропущено... Откуда такое громкое заявление? На нобель идёшь, не меньше ))Ну тогда озвучивай остальные причины, из-за которых требуется делать в БД поле типа Guid: 1. Уникальность между разными серверами. 2. ... 3. ... http://ru.wikipedia.org/wiki/GUID Его главная особенность — уникальность, которая позволяет создавать расширяемые сервисы и приложения без опасения конфликтов, вызванных совпадением идентификаторов. Причем тут "разные сервера"? :) Во-вторых, я уже писал. В компании есть 100500 различных систем, их нужно интегрировать, как-то обвязывать. Как можно ограничиваться только интами, я не понимаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:33 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Гуиды нужны не только для обеспечения уникальности между разными сервисами, но и для репликации например. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:36 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУАлексей Кпропущено... Ну тогда озвучивай остальные причины, из-за которых требуется делать в БД поле типа Guid: 1. Уникальность между разными серверами. 2. ... 3. ... http://ru.wikipedia.org/wiki/GUID Его главная особенность — уникальность, которая позволяет создавать расширяемые сервисы и приложения без опасения конфликтов, вызванных совпадением идентификаторов. Причем тут "разные сервера"? :) Во-вторых, я уже писал. В компании есть 100500 различных систем, их нужно интегрировать, как-то обвязывать. Как можно ограничиваться только интами, я не понимаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:36 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Arm79Гуиды нужны не только для обеспечения уникальности между разными сервисами , но и для репликации например.Серверами я сказал. Типичный пример - да, репликация. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:37 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Что касается int - то ММВБ (РТС) уже давно перешло на long. Номера заявок превысили размерность типа. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:37 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КЕсли кто-то из присутствующих не владеет элементарными навыками ООП, я не виноват. :-)А при чём тут ООП? :) Для идентификаторов из внешних систем я string использую, т.к. где-то guid-ы, где-то хэши, где-то ObjectId, где-то строки, где-то инты, где-то лонги и т.д., и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:37 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Arm79Что касается int - то ММВБ (РТС) уже давно перешло на long. Номера заявок превысили размерность типа.Но это же не для классификаторов. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:45 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КНо это же не для классификаторов. Да, таблица заявок - это не словарь. Согласен. Я исходил из своей ситуации, когда бизнес-объект создавался не для классификатора, а в общем - для таблицы. Как тип классификатора - символ. Исключительно из удобства чтения разработчиком. Пример: справочник состояний: a - активный, d - удаленный мне было бы удобнее писать: select * from orders where state = 'a' чем заморачиваться на select * from orders join states on orders.stateId = states.Id and states.Name = 'активный'. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:55 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КArm79Что касается int - то ММВБ (РТС) уже давно перешло на long. Номера заявок превысили размерность типа.Но это же не для классификаторов.И для классификаторов может возникнуть такая необходимость. Например когда идентификаторы генерируются по какому-то правилу, а не тупо инкрементом. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 12:58 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Но это же не для классификаторов.И для классификаторов может возникнуть такая необходимость. Например когда идентификаторы генерируются по какому-то правилу, а не тупо инкрементом.И что мешает для этого использовать тип int? Ну в крайнем случае long, но маловероятно. Ни разу не встречал необходимости генерации классификатора. И, вероятно, не встречу. викиКлассификатор, или (от лат. classis — разряд и facere — делать) — систематизированный перечень наименованных объектов, каждому из которых в соответствие дан уникальный код. Классификация объектов производится согласно правилам распределения заданного множества объектов на подмножества (классификационные группировки) в соответствии с установленными признаками их различия или сходства. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 13:03 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
таблица с ИНН - как воспринимаете? Справочник или нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 13:06 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Но это же не для классификаторов.И для классификаторов может возникнуть такая необходимость. Например когда идентификаторы генерируются по какому-то правилу, а не тупо инкрементом. спор не о чём: Код: c# 1. 2. 3. 4. 5. 6.
ТС судя по всему интересуется вопросом из чего делать коллекцию биндинг лист нормальное решение, грид цепляется без проблем ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 13:07 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Но это же не для классификаторов.И для классификаторов может возникнуть такая необходимость. Например когда идентификаторы генерируются по какому-то правилу, а не тупо инкрементом. спор не о чём: Код: c# 1. 2. 3. 4. 5. 6.
ТС судя по всему интересуется вопросом из чего делать коллекцию биндинг лист нормальное решение, грид цепляется без проблем ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 13:07 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Arm79таблица с ИНН - как воспринимаете? Справочник или нет?Нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 13:07 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
pationспор не о чёмДа спора-то как такового нет. Лично для меня очевидно, что позиция Алексея в очередной раз строится на том, что вот он конкретно с этим не сталкивался, следовательно на эту тему и не стоит думать. Это нормально. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 14:10 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Лёня, как ты думаешь, почему в мембершип провайдере у айдишника юзера (ProviderUserKey) тип object? Только не торопись, подумай сначала :) MembershipUser.ProviderUserKey ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 14:15 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAпропущено... И для классификаторов может возникнуть такая необходимость. Например когда идентификаторы генерируются по какому-то правилу, а не тупо инкрементом.И что мешает для этого использовать тип int? Ну в крайнем случае long, но маловероятно.В int не влазило, long - нормально. Алексей КНи разу не встречал необходимости генерации классификатора .Под генерацией классификатора Вы генерацию идентификатора подразумеваете? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 14:17 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУЛёня, как ты думаешь, почему в мембершип провайдере у айдишника юзера (ProviderUserKey) тип object? Только не торопись, подумай сначала :) MembershipUser.ProviderUserKey Ещё раз, для "танкистов", учётка пользователя не является записью из классификатора. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 14:47 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAВ int не влазило, long - нормально.Может способ присваивания кодов так себе? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 14:59 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КМСУЛёня, как ты думаешь, почему в мембершип провайдере у айдишника юзера (ProviderUserKey) тип object? Только не торопись, подумай сначала :) MembershipUser.ProviderUserKey Ещё раз, для "танкистов", учётка пользователя не является записью из классификатора. А что должно являться? Дай чёткие определения и правила :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:08 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей КНи разу не встречал необходимости генерации классификатора .Под генерацией классификатора Вы генерацию идентификатора подразумеваете?Согласен. Вы про генерацию кодов, а не того, о чём я подумал. Невнимательно прочитал, сори. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:09 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУА что должно являться?Должно. МСУДай чёткие определения и правила :)Топик про классификатор. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:10 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КМСУА что должно являться?Должно. После "что" не запятой. Следовательно, переосмысли еще раз вопрос :) Алексей КМСУДай чёткие определения и правила :)Топик про классификатор. Ну а я про что? Ты как-то лихо направо и налево по каким-то своими критериям отсеиваешь, что должно являться справочником, а что не должно. Раскрой карты уже, я тоже хочу быть умничкой ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:12 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAВ int не влазило, long - нормально.Может способ присваивания кодов так себе?Уникальный код и идентификатор - это разные вещи. Код вообще не обязан быть чисто числовым. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:17 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAпропущено... Под генерацией классификатора Вы генерацию идентификатора подразумеваете?Согласен. Вы про генерацию кодов, а не того, о чём я подумал. Невнимательно прочитал, сори.Я про генерацию идентификаторов ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:18 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУАлексей Кпропущено... Должно. После "что" не запятой. Следовательно, переосмысли еще раз вопрос :)"Казнить нельзя помиловать" (ц) МСУАлексей Кпропущено... Топик про классификатор. Ну а я про что? Ты как-то лихо направо и налево по каким-то своими критериям отсеиваешь, что должно являться справочником, а что не должно. Раскрой карты уже, я тоже хочу быть умничкой Давай лучше я спрошу. :-) 1. По моим наблюдениям, существует масса случаев, когда у объекта поля { int ID, string Name } . Обычно такие объекты отображаются в комбобоксах. Я для таких случаев заготовил специальный класс и DataTemplate для его визуализации. В случаях, когда этот класс не подходит, применяется специальный класс. 2. Применение в классификаторах нецелочисленного типа для первичного ключа встречается достаточно редко. Если кто-то и применяет - Бог ему судья. 3. Guid применяют в качестве первичного ключа в случаях, когда требуется межсерверная уникальность. Такая уникальность для классификаторов обычно не требуется. В чём я не прав? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:32 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Может способ присваивания кодов так себе?Уникальный код и идентификатор - это разные вещи. Код вообще не обязан быть чисто числовым.skyANAАлексей Кпропущено... Согласен. Вы про генерацию кодов, а не того, о чём я подумал. Невнимательно прочитал, сори.Я про генерацию идентификаторов Я про формирование первичного ключа. "Код" это или "идентификатор", в Вашем понимании, я не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:35 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КМСУпропущено... После "что" не запятой. Следовательно, переосмысли еще раз вопрос :)"Казнить нельзя помиловать" (ц) МСУпропущено... Ну а я про что? Ты как-то лихо направо и налево по каким-то своими критериям отсеиваешь, что должно являться справочником, а что не должно. Раскрой карты уже, я тоже хочу быть умничкой Давай лучше я спрошу. :-) 1. По моим наблюдениям, существует масса случаев, когда у объекта поля { int ID, string Name } . Обычно такие объекты отображаются в комбобоксах. Я для таких случаев заготовил специальный класс и DataTemplate для его визуализации. В случаях, когда этот класс не подходит, применяется специальный класс. 2. Применение в классификаторах нецелочисленного типа для первичного ключа встречается достаточно редко. Если кто-то и применяет - Бог ему судья. 3. Guid применяют в качестве первичного ключа в случаях, когда требуется межсерверная уникальность. Такая уникальность для классификаторов обычно не требуется. В чём я не прав? Боже ж ты мой. Ну хорошо, получилось у тебя обобщить десяток банальных справочников до вида { int ID, string Name }. Ну и в чем профит кодеманства ООП всея мира? Какая-то экономия непонятно чего на спичках с сомнительной выгодой. Короче, милок, всё это от лукавого. Так и запротоколируй ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:59 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Это как wpf tabbed mdi, вроде и не mdi, вроде не пашет таскбарность, вроде всё как-то через жопу, но таки работает же ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 16:02 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAпропущено... Уникальный код и идентификатор - это разные вещи. Код вообще не обязан быть чисто числовым.skyANAпропущено... Я про генерацию идентификаторов Я про формирование первичного ключа. "Код" это или "идентификатор", в Вашем понимании, я не знаю.Хорошо. Код классификатора и первичный ключ - в общем случае это разные вещи. Я про генерацию первичного ключа (идентификатора). ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 16:41 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУБоже ж ты мой.Испугался? МСУНу хорошо, получилось у тебя обобщить десяток банальных справочников до вида { int ID, string Name }.От пятидесяти, меньше не держим. МСУНу и в чем профит кодеманства ООП всея мира?DRY МСУКакая-то экономия непонятно чего на спичках с сомнительной выгодой.Выгода существенна. МСУКороче, милок, всё это от лукавого. Так и запротоколируй Секретаршу нашёл? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 17:35 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КМСУпропущено... После "что" не запятой. Следовательно, переосмысли еще раз вопрос :)"Казнить нельзя помиловать" (ц) МСУпропущено... Ну а я про что? Ты как-то лихо направо и налево по каким-то своими критериям отсеиваешь, что должно являться справочником, а что не должно. Раскрой карты уже, я тоже хочу быть умничкой Давай лучше я спрошу. :-) 1. По моим наблюдениям, существует масса случаев, когда у объекта поля { int ID, string Name } . Обычно такие объекты отображаются в комбобоксах. Я для таких случаев заготовил специальный класс и DataTemplate для его визуализации. В случаях, когда этот класс не подходит, применяется специальный класс. 2. Применение в классификаторах нецелочисленного типа для первичного ключа встречается достаточно редко. Если кто-то и применяет - Бог ему судья. 3. Guid применяют в качестве первичного ключа в случаях, когда требуется межсерверная уникальность. Такая уникальность для классификаторов обычно не требуется. В чём я не прав?Я бы простые справочники классификаторами не называл. Ну не укладывается у меня классификация дефектов нефтепровода в два поля: int ID, string Name ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 17:50 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КМСУНу и в чем профит кодеманства ООП всея мира?DRY Это ж пипец просто, обобщил ID и Name, и вот тебе целый DRY. Ну прямо робота написал с кнопкой "Сделать всё" Вот тебе флаг за это )) Алексей КМСУКакая-то экономия непонятно чего на спичках с сомнительной выгодой.Выгода существенна. ID и Name - это существенная выгода? Я плачу, бро... Алексей КСекретаршу нашёл? Просто потыкал в тебя палочкой и измерил реакцию по приборам. Пациент здоров, но легкая шоковая терапия не помешала бы ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 17:58 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУЭто ж пипец просто, обобщил ID и Name, и вот тебе целый DRY. Ну прямо робота написал с кнопкой "Сделать всё" Экономия на буквах есть и хуже не стало. Чем недоволен-то? :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 06:27 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAЯ бы простые справочники классификаторами не называл.Критерии простоты? skyANAНу не укладывается у меня классификация дефектов нефтепровода в два поля: int ID, string Name У меня классификатор обородувания тягового подвижного состава в ID-Name тоже не укладывается, но что это меняет? Я же не говорю о структуре данных в БД. Я говорю больше о комбобоксах. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 06:32 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КЭкономия на буквах есть и хуже не стало. Чем недоволен-то? :-) Бро, ну какие это буквы в самом-то деле :) Кроме головной боли и геморроя на попе, тут нечего поиметь. У меня 100500 атрибутов у сущности / справочника / классификатора / букварька / шняжки / или как ты там это называешь. И (о, да!) 100501-й и 100502-й - это, как-раз, ID и Name. Не пойму, мне радоваться или плакать, что я забомбил такое неимоверное обобщение? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 09:11 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУАлексей КЭкономия на буквах есть и хуже не стало. Чем недоволен-то? :-) Бро, ну какие это буквы в самом-то деле :) Кроме головной боли и геморроя на попе, тут нечего поиметь. У меня 100500 атрибутов у сущности / справочника / классификатора / букварька / шняжки / или как ты там это называешь. И (о, да!) 100501-й и 100502-й - это, как-раз, ID и Name. Не пойму, мне радоваться или плакать, что я забомбил такое неимоверное обобщение? Если это не надо тебе, это не значит, что это не надо мне. Не? :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 09:44 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAпропущено... Дак у него одна база на всю жизнь, у него не может быть ничего, кроме интов :)Это хорошо или плохо?Интов однажды может просто не хватить. ВНЕЗАПНО А еще идентификатором может быть всё что угодно, включая строку. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 09:56 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КЕсли это не надо тебе, это не значит, что это не надо мне. Не? :-) Это левотня никому не нужна, тебе в том числе. Верь мне (с) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 10:01 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
enigmaticАлексей Кпропущено... Это хорошо или плохо?Интов однажды может просто не хватить. ВНЕЗАПНОЭто ведь классификатор. Чтобы такое случилось, нужно произвести разбиение объектов на ~2 милиарда категорий. Не думаю, что такая предметная область существует. enigmaticА еще идентификатором может быть всё что угодно, включая строку.Повторюсь, Бог им судья. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 10:38 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУВерь мне (с) Не сегодня. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 10:39 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
* мил л иарда ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 10:40 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей К, Сорри, это я в целом про идентификаторы. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 11:24 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAЯ бы простые справочники классификаторами не называл.Критерии простоты?ИМХО: 1. для описания сущности достаточно трёх атрибутов: ID, Code, Name; 2. мало значений (данных) Алексей КskyANAНу не укладывается у меня классификация дефектов нефтепровода в два поля: int ID, string Name У меня классификатор обородувания тягового подвижного состава в ID-Name тоже не укладывается, но что это меняет? Я же не говорю о структуре данных в БД. Я говорю больше о комбобоксах.О, третий критерий: удобно выбирать из комбобокса. Хотя он следует из первых двух Хотел бы я посмотреть на пользователя, что ищет нужные ему данные в классификаторе обородувания тягового подвижного состава, натирая палец об колёсико мыши. Для таких вещей обычно лукапы делают: тыкаешь кнопочку, открывается форма поиска. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 12:02 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей Кenigmaticпропущено... Интов однажды может просто не хватить. ВНЕЗАПНОЭто ведь классификатор. Чтобы такое случилось, нужно произвести разбиение объектов на ~2 милиарда категорий. Не думаю, что такая предметная область существует.Алексей, а что такое категории? Уникальные коды? Опять путаете с идентификаторами? Алексей КНе думаю, что такая предметная область существует.Какая? Где int-а не хватает для идентификаторов классификатора? Нефтянка. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 12:11 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Дефектоскопия трубопроводов. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 12:13 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Критерии простоты?ИМХО: 1. для описания сущности достаточно трёх атрибутов: ID, Code, Name; 2. мало значений (данных)Так себе. skyANAАлексей Кпропущено... У меня классификатор обородувания тягового подвижного состава в ID-Name тоже не укладывается, но что это меняет? Я же не говорю о структуре данных в БД. Я говорю больше о комбобоксах.О, третий критерий: удобно выбирать из комбобокса. Хотя он следует из первых двух Хотел бы я посмотреть на пользователя, что ищет нужные ему данные в классификаторе обородувания тягового подвижного состава, натирая палец об колёсико мыши. Для таких вещей обычно лукапы делают: тыкаешь кнопочку, открывается форма поиска.Комбобокс - это не единственный вариант. Для больших классификаторов применяем поиск по вхождению в название введённой строки. "Ввод значений по классификатору" . Исходники контрола . ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 12:20 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 12:25 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Это ведь классификатор. Чтобы такое случилось, нужно произвести разбиение объектов на ~2 милиарда категорий. Не думаю, что такая предметная область существует.Алексей, а что такое категории? Уникальные коды? Опять путаете с идентификаторами? викиКлассифика́тор, или (от лат. classis — разряд и facere — делать) — систематизированный перечень наименованных объектов, каждому из которых в соответствие дан уникальный код. Классификация объектов производится согласно правилам распределения заданного множества объектов на подмножества (классификационные группировки) в соответствии с установленными признаками их различия или сходства. skyANAАлексей КНе думаю, что такая предметная область существует.Какая? Где int-а не хватает для идентификаторов классификатора? Нефтянка.Ну не может быть в классификаторе 2 миллиарда записей. Или это не классификатор, или способ присвоения кодов оставляет большие "дыры". Если второе, то я знаю что такое может быть, но ничего хорошего в этом не вижу, о чём и писал выше. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 12:26 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУТаббед мди тухловат имхо. Не? )Он прекрасен! ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 12:26 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КОн прекрасен! Пока не будет таскбарности, ни о какой красе не может быть и речь. Ибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:09 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУАлексей КОн прекрасен! Пока не будет таскбарности, ни о какой красе не может быть и речь. Ибо.Нет. Она будет бесить. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:10 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAпропущено... Алексей, а что такое категории? Уникальные коды? Опять путаете с идентификаторами? викиКлассифика́тор, или (от лат. classis — разряд и facere — делать) — систематизированный перечень наименованных объектов, каждому из которых в соответствие дан уникальный код. Классификация объектов производится согласно правилам распределения заданного множества объектов на подмножества (классификационные группировки) в соответствии с установленными признаками их различия или сходства. skyANAпропущено... Какая? Где int-а не хватает для идентификаторов классификатора? Нефтянка.Ну не может быть в классификаторе 2 миллиарда записей. Или это не классификатор, или способ присвоения кодов оставляет большие "дыры". Если второе, то я знаю что такое может быть, но ничего хорошего в этом не вижу, о чём и писал выше.Не может, но: 15481210 . ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:25 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей КНу не может быть в классификаторе 2 миллиарда записей. Или это не классификатор, или способ присвоения кодов оставляет большие "дыры". Если второе, то я знаю что такое может быть, но ничего хорошего в этом не вижу, о чём и писал выше .Не может, но: 15481210 . ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:29 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КНет. Она будет бесить. С чего бы это вдруг? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:36 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУАлексей КНет. Она будет бесить. С чего бы это вдруг?А почему нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:42 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КА почему нет? Потому что да ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:54 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУАлексей КА почему нет? Потому что да Да?! ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:57 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... "Казнить нельзя помиловать" (ц) пропущено... Давай лучше я спрошу. :-) 1. По моим наблюдениям, существует масса случаев, когда у объекта поля { int ID, string Name } . Обычно такие объекты отображаются в комбобоксах. Я для таких случаев заготовил специальный класс и DataTemplate для его визуализации. В случаях, когда этот класс не подходит, применяется специальный класс. 2. Применение в классификаторах нецелочисленного типа для первичного ключа встречается достаточно редко. Если кто-то и применяет - Бог ему судья. 3. Guid применяют в качестве первичного ключа в случаях, когда требуется межсерверная уникальность. Такая уникальность для классификаторов обычно не требуется. В чём я не прав?Я бы простые справочники классификаторами не называл. Ну не укладывается у меня классификация дефектов нефтепровода в два поля: int ID, string Name С тремя пунктами от Алексей К сотгласен полностью. Вы по терминологии б договорились и все на свои места стало б. Класификатором - обозвите справочник, которому хватает int ID, string Name. Справочником - которому нужно еще полей дополнительно. В обоих случаях первичным ключем может быть Int. Если справочнику необходимо количество записей больше размерности Int, используем Long. Наличие, окромя первичного ключа, какого-то возможно уникального поля аля ИПН, еще не означает удобства его использования в качестве первичного ключа. Индексы, поиски и протчая лабуда для инта работает быстрее чем для строк. Кроме того, если уж так прет от ИПН, то часто он неизвестен, а работать надо... если его вместо превичного ключа использовать, так только и делов будет кричать: за справкой беги, не продам тебе валидол без ИПН. PS. таббед - всего лишь одна из возможных реализацый интерфейса и к этим 3-м пунктам об организации таблиц в БД имеет отношение, как и любой другой интерфейс - параллельное. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 14:02 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Данные в таблицы-классификаторы обычно добавляются на этапе разработки или конфигурирования системы перед её эксплуатацией. В процессе эксплуатации данные в таблицах-классификаторах обычно меняются редко. Для меня это основное отличие классификаторов от неклассификаторов. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 14:35 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Парни, ещё раз: 1. идентификатор записи, первичный ключ - это не уникальный код классификатора; 2. идентификатор записи может генерироваться не просто инкрементом и размерности Int-а может не хватить. Да он будет long-ом, но не int-ом. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 14:50 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
IAppleskyANAпропущено... Я бы простые справочники классификаторами не называл. Ну не укладывается у меня классификация дефектов нефтепровода в два поля: int ID, string Name С тремя пунктами от Алексей К сотгласен полностью. Вы по терминологии б договорились и все на свои места стало б. Класификатором - обозвите справочник, которому хватает int ID, string Name. Справочником - которому нужно еще полей дополнительно. В обоих случаях первичным ключем может быть Int. Если справочнику необходимо количество записей больше размерности Int, используем Long. А вот например "заявки принятые Ивановым за сегодня" - тоже ID и Name, тоже нужны для "комбика" - тоже чтоли справочник? По мне так, этой границы нет вообще, одна и таже таблица иногда может выступать в роли справочника. Иногда справочник это вообще не таблица, а выборка, прчем выборка значений которых нет в таблицах. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 14:58 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей К, обратимся к Вашей любимой википедии:Виды классификаторовКлассификаторы разрабатываются как на уровне отдельных предприятий (организаций), так и на уровне государств. Существуют следующие уровни классификаторов: - международные — стандартные классификаторы, используемые по всему миру...ISO коды валют, IATA коды аэропортов, городов и регионов - это ни фига не числовые коды. Но идентификатор записи в вашей конкретной базе, в справочнике валют вполне может быть числовым, потому как идентификатор - это не код классификатора ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 14:59 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Хотя с валютой не удачный пример, т.к. стандартом предполагается и буквенный и цифровой коды. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 15:03 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей К, обратимся к Вашей любимой википедии:Виды классификаторовКлассификаторы разрабатываются как на уровне отдельных предприятий (организаций), так и на уровне государств. Существуют следующие уровни классификаторов: - международные — стандартные классификаторы, используемые по всему миру...ISO коды валют, IATA коды аэропортов, городов и регионов - это ни фига не числовые коды. Но идентификатор записи в вашей конкретной базе, в справочнике валют вполне может быть числовым, потому как идентификатор - это не код классификатора Есть первичный ключ, есть остальные поля. Да, в классификаторе могут присутствовать кроме имени короткие обозначения, ну и что? Возьмёт ICAO-классификатор аэропортов: Код: c# 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 15:18 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANA1. идентификатор записи, первичный ключ - это не уникальный код классификатора;И тем не менее, в случае с комбобоксом, скорее всего, в качестве SelectedValue будет использоваться именно это поле. Поэтому речь именно про него. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 15:23 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANA2. идентификатор записи может генерироваться не просто инкрементом и размерности Int-а может не хватить. Да он будет long-ом, но не int-ом. С этим я не спорю, просто мне это не нравится, не более того. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 15:24 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANA2. идентификатор записи может генерироваться не просто инкрементом и размерности Int-а может не хватить. Да он будет long-ом, но не int-ом. С этим я не спорю, просто мне это не нравится, не более того.А мне показалось, что спорите:Алексей КArm79Что касается int - то ММВБ (РТС) уже давно перешло на long. Номера заявок превысили размерность типа.Но это же не для классификаторов. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 15:48 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... С этим я не спорю, просто мне это не нравится, не более того.А мне показалось, что спорите:Алексей Кпропущено... Но это же не для классификаторов.Заявка не является классификатором, о чём я и сообщил. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 15:53 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAпропущено... А мне показалось, что спорите:пропущено... Заявка не является классификатором, о чём я и сообщил.И что? Из этого же не следует, что идентификатор записи или код классификатора не может превысить размерность int-а. Ещё как могут. Правда это сразу после выбора метода классификации или метода генерации идентификатора станет ясно ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:01 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей К, к чему спорить то? Выделять отдельную сущность исключительно под классификаторы - это спорное решение. И тем более затачивать их только под int. Если речь идет именно об ускорении работы и т.п., проще сниппет сделать, и, при необходимости, менять тип свойства ID. Вы же заранее себя ограничиваете, закладывая int в основание иерархии классов. Сейчас мы делаем проект один, так там общие справочники/классификаторы для всех ИТ-систем организации (Master Data Management). Ключи там разнообразные, в т.ч. и строки. К тому же, есть общероссийские классификаторы, которые юзаются as is. Например, Коды ТН ВЭД , где ключом являются римские цифры ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:06 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Заявка не является классификатором, о чём я и сообщил.И что? Из этого же не следует, что идентификатор записи или код классификатора не может превысить размерность int-а. Ещё как могут. Правда это сразу после выбора метода классификации или метода генерации идентификатора станет ясно Ну и замечательно. Я стараюсь избегать таких способов формирования значений первичного ключа, поэтому в большинстве случаев меня устраивает структура данных { int ID; string Name; } , под которую я заготовил специальный класс и часто его использую. Всё сходится. Думаю, все всё поняли, тему можно закрывать. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:11 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей К, да ещё на второй странице все всё поняли: 15481891 ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:15 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Arm79Алексей К, к чему спорить то?Я и не спорю. :-) Это окружающие меня пытаются убедить в моей неправоте, вероятно, они знают мои задачи лучше меня. :-) Arm79Выделять отдельную сущность исключительно под классификаторы - это спорное решение. И тем более затачивать их только под int. Если речь идет именно об ускорении работы и т.п., проще сниппет сделать, и, при необходимости, менять тип свойства ID. Вы же заранее себя ограничиваете, закладывая int в основание иерархии классов.Если вдруг произойдёт чудо и придётся сменить тип первичного ключа - так и быть, вместо стандартного класса будет использован специальный. Такую замену можно будет произвести по необходимости. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:17 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей К, Ваша проблема в том, что Вы на основе конкретно своих задач и инфраструктуры делаете обощающие выводы:Алексей КНе думаю, что такая предметная область существует.Это не правильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:20 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей К, да ещё на второй странице все всё поняли : 15481891 Я не понял, Вы решили меня осуждать от имени всех присутствующих? Это занятие с сомнительной перспективой. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:24 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAАлексей К, да ещё на второй странице все всё поняли : 15481891 Я не понял, Вы решили меня осуждать от имени всех присутствующих? Это занятие с сомнительной перспективой.Вас часто осуждают? P.S.: по ссылке нет осуждения, там констатация того, что спор ни о чём и его вообще нет. И то, что Вы дальше собственных проектов не видите. И это нормально. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:29 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Я не понял, Вы решили меня осуждать от имени всех присутствующих? Это занятие с сомнительной перспективой.Вас часто осуждают? "Вы хотите поговорить об этом?" (ц) skyANAP.S.: по ссылке нет осуждения, там констатация того, что спор ни о чём и его вообще нет.Так и есть. Я не ставлю для себя задачу кого-то в чём-то убеждать. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:39 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Скучно. Хочется драйва и честного вброса... Кстати, логику в хп делают только те, кто не осилил нормальные средства разработки и ORM. Алексей подтвердит. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:41 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAпропущено... Вас часто осуждают? "Вы хотите поговорить об этом?" (ц) skyANAP.S.: по ссылке нет осуждения, там констатация того, что спор ни о чём и его вообще нет.Так и есть. Я не ставлю для себя задачу кого-то в чём-то убеждать.Это плюс. Было бы совсем замечательно, если бы Вы научились смотреть на проблему шире, а не сугубо через призму свого проекта. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:45 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУСкучно. Хочется драйва и честного вброса...Да. Но skyANA, к сожалению, этого не понимает и слишком серьёзно относится к происходящему. :-) МСУКстати, логику в хп делают только те, кто не осилил нормальные средства разработки и ORM. Алексей подтвердит.Надоело... (зевает) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:46 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей К, мне просто смайлики иногда влом ставить ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:48 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей К, мне просто смайлики иногда влом ставить Надеюсь. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:49 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAАлексей К, мне просто смайлики иногда влом ставить Надеюсь. :-)Я Вас уверяю. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:50 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Надеюсь. :-)Я Вас уверяю.ОК. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:51 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУСкучно. Хочется драйва и честного вброса... Кстати, логику в хп делают только те, кто не осилил нормальные средства разработки и ORM. Алексей подтвердит.Плевать на логику в хп, плевать на ORM. Я использую MongoDB ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:51 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Алексей КskyANAпропущено... Я Вас уверяю.ОК. :-)Вот и славно ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:52 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAБыло бы совсем замечательно, если бы Вы научились смотреть на проблему шире, а не сугубо через призму свого проекта.Кстати, давно для себя решил ограничивать "широту взгляда" при решении задач. От "широкого охвата" часто больше вреда чем пользы. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 16:57 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAЯ использую MongoDB Монго упоротое гумно. Даешь сиквел ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 17:44 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAЯ использую MongoDB Кстати, раз уж такое дело... Вы скорость тестировали? По сравнению с обычными реляционными СУБД? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 18:00 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Arm79skyANAЯ использую MongoDB Кстати, раз уж такое дело... Вы скорость тестировали? По сравнению с обычными реляционными СУБД?Да, и продолжаем в предверии релиза. На продакшн у нас сейчас все данные лежат в SQL Server, но для повышения масштабируемости часть их перенесли в MongoDB. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 22:27 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Ваш спор ни о чем. Все обсуждаемые реализации никакого отношения к теме не имеют. Должен быть интерфейс для ключа, тогда id и содержимое модели могут быть любыми. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 08:59 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Вот так вот нах! ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 09:49 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
SeVaВсе обсуждаемые реализации никакого отношения к теме не имеют.Вот так вброс Тема называется: "Шаблон класса для представления справочников". Так что не надо ля-ля. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 10:29 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
SeVaДолжен быть интерфейс для ключа, тогда id и содержимое модели могут быть любыми. Проиллюстрируйте примером, плиз. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 10:35 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
SeVaВаш спор ни о чем. Все обсуждаемые реализации никакого отношения к теме не имеют. Должен быть интерфейс для ключа, тогда id и содержимое модели могут быть любыми. Ты чего там куришь, бабуин? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 10:40 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
Где реакции на то, что MongoDB УГ? Или все согласны с этим доводом? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 11:03 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
МСУSeVaВаш спор ни о чем. Все обсуждаемые реализации никакого отношения к теме не имеют. Должен быть интерфейс для ключа, тогда id и содержимое модели могут быть любыми. Ты чего там куришь, бабуин? То, что я курю вредно дошкольникам, которые не доросли до обобщенных классов. Иди в класс учиться ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 11:47 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
skyANAАлексей Кпропущено... Нет! :-)О, давайте говнокодом справочниками меряться Мой вариант: Код: c# 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. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99.
SkyANA, ля-ля с тормозами и прочей шелухой у тебя с ConvertTo на ровном месте. Обобщения предназначены именно для того, чтобы не было подобного говнокода ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 12:06 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
SeVaТо, что я курю вредно дошкольникам, которые не доросли до обобщенных классов. Иди в класс учиться То, что ты куришь, вредно даже коровам на лугу. От едкого дыма у них распирает вымя и выпячиваются глаза. Завязывай с наркотиками. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 12:14 |
|
Шаблон класса для представления справочников
|
|||
---|---|---|---|
#18+
SeVaSkyANA, ля-ля с тормозами и прочей шелухой у тебя с ConvertTo на ровном месте. Обобщения предназначены именно для того, чтобы не было подобного говнокодаСомневаюсь что ты вообще понял для чего ConvertTo P.S.: коду сто лет в обед, под .Net 2.0 ещё писался. Любая конструктивная критика приветствуется. Хотя я сильно сомневаюсь, что он мне когда-то ещё понадобиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 12:30 |
|
|
start [/forum/topic.php?all=1&fid=20&tid=1403342]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
104ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
123ms |
get tp. blocked users: |
1ms |
others: | 361ms |
total: | 626ms |
0 / 0 |