|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Здравствуйте всем, имеется SqlDataReader. Как можно с помощью Linq преобразовать его в массив классов, поля которого являются полями таблицы? Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2011, 12:34 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
artemiusЗдравствуйте всем, имеется SqlDataReader. Как можно с помощью Linq преобразовать его в массив классов, поля которого являются полями таблицы? Спасибо! Никак. Это разные идеологии чтения данных. Общее у них то, что и из SqlDataReader, и используя Linq можно заполнить List<класс> ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2011, 00:59 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
artemiusмассив классов, поля которого у классов нет полей ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2011, 09:37 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Верблюду классов нет полей А что есть у классов? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 16:25 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
МСУВерблюду классов нет полей А что есть у классов? свойства, методы. Если же ты хочешь выставить поля наружу - твое конечно дело, но как ты потом будешь их изменения отслеживать? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 18:20 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
artemiusимеется SqlDataReader. Как можно с помощью Linq преобразовать его в массив классов, поля которого являются полями таблицы? Можно. Но причём тут LINQ? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 18:23 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Верблюдсвойства, методы. Если же ты хочешь выставить поля наружу - твое конечно дело, но как ты потом будешь их изменения отслеживать? А если я не хочу отслеживать их изменения? :-) Впрочем, если я потом это захочу - поменяю поля на свойства, всё перекомпилирую и всё. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 18:25 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Алексей Квсё перекомпилирую и всё. :-) Ога, ога. И все остальные пять тысяч проетов, которые ведет твоя компания тоже перекомпилирую... заодно будет чем программистам заняться - они же всеравно ничего не делают... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 18:27 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
ВерблюдАлексей Квсё перекомпилирую и всё. :-) Ога, ога. И все остальные пять тысяч проетов, которые ведет твоя компания тоже перекомпилирую... заодно будет чем программистам заняться - они же всеравно ничего не делают...А я опишу класс как private или internal. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 18:29 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Опять же, если это DTO, передаваемый через WCF. В нём логики нет по определению. WCF без проблем распознаёт публичные поля. LINQ тоже. Накой тут свойства? ЗЫ: Писать просто { get; set; } лень. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 18:36 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Алексей КОпять же, если это DTO, передаваемый через WCF. В нём логики нет по определению. WCF без проблем распознаёт публичные поля. LINQ тоже. Накой тут свойства? ЗЫ: Писать просто { get; set; } лень. Ну ладно, пусть будет DTO. Но тут человек хочет, как я понял, датаридер на бизнес-объекты отразить... где Сева с его CSLA? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 18:44 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Верблюдгде Сева с его CSLA? Ну может пока BLToolkit-ный маппер предложим? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 18:48 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
ВерблюдА что есть у классов? свойства, методы. Если же ты хочешь выставить поля наружу - твое конечно дело, но как ты потом будешь их изменения отслеживать? [/quot] Стоп стоп стоп. Верблюд, давеча Вы утверждали, что у классов нет полей. А теперь говорите обратное. Давайте определимся, у классов есть поля или нету? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 19:46 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
По теме: 10281093 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 19:49 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
МСУПо теме: 10281093 Reflection - не наш метод. Взрослые дядьки делают через Emit. Мутим EmitPropertyInfo с методами GetValue и SetValue и применяем везде. В том числе и для этой задачи. Могу завтра выложить если интересно. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 19:58 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Алексей КМСУПо теме: 10281093 Reflection - не наш метод. Взрослые дядьки делают через Emit. Мутим EmitPropertyInfo с методами GetValue и SetValue и применяем везде. В том числе и для этой задачи. Могу завтра выложить если интересно. Ок, интересно было бы глянуть. Заодно посостязаемся, чей маппер будет шустрее :) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 20:41 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Алексей КМСУПо теме: 10281093 Reflection - не наш метод. Взрослые дядьки делают через Emit. Мутим EmitPropertyInfo с методами GetValue и SetValue и применяем везде. В том числе и для этой задачи. Могу завтра выложить если интересно. Ок, интересно было бы глянуть. Заодно посостязаемся, чей маппер будет шустрее :) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2011, 20:48 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
МСУНу там маппера как такового нет. Там заготовка для него. А дальше используем эту заготовку как обычный рефлекшен везьде где нужно динамически обращаться к свойствам. Не для слабонервных Код: 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. 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. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210.
Ну и пример вызова: Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2011, 06:00 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Алексей КНу и пример вызова: Код: plaintext 1. 2. 3. 4.
Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2011, 06:02 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Алексей КА дальше используем эту заготовку как обычный рефлекшен везьде где нужно динамически обращаться к свойствам. Ну а в чём тогда "величие" по сравнению с родной и любимой всеми рефлекторикой? ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2011, 10:36 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
МСУАлексей КА дальше используем эту заготовку как обычный рефлекшен везьде где нужно динамически обращаться к свойствам. Ну а в чём тогда "величие" по сравнению с родной и любимой всеми рефлекторикой? ;)Я имел ввиду похожий API: PropertyInfo => EmitPropertyInfo. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2011, 10:39 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Алексей КМСУПо теме: 10281093 Reflection - не наш метод. Взрослые дядьки делают через Emit. Код: plaintext
Код: plaintext
Код: plaintext
Код: plaintext 1. 2.
Код: plaintext
Браво, Алексей, браво! :) Алексей КНу а в чём тогда "величие" по сравнению с родной и любимой всеми рефлекторикой? ;)Я имел ввиду похожий API: PropertyInfo => EmitPropertyInfo.[/quot] См. выше :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2011, 10:43 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Дробовик доставать? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2011, 10:47 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
МСУДробовик доставать?Ничего не могу с собой поделать. Однажды наступил момент органического неприятия оператора логического отрицания "!" из-за его ненаглядности. Продолжаю с собой бороться, пока безрезультатно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2011, 10:49 |
|
Linq и SqlDataReader
|
|||
---|---|---|---|
#18+
МСУСм. выше :)Как бэ речь идёт о том, чтобы избежать вызова PropertyInfo.GetValue и PropertyInfo.SetValue. То что приведено выше - вызывается однократно при первом обращении, кэшируется. Вы походу не в теме решаемой тут задачи. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2011, 10:53 |
|
|
start [/forum/topic.php?fid=17&fpage=40&tid=1350607]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 316ms |
total: | 451ms |
0 / 0 |