|
Entity Framework в WCF сервисе
|
|||
---|---|---|---|
#18+
Есть silverlight приложение, которое получает доступ к данным базы через WCF-сервис. Для доступа к данным в WCF-сервисе используется Entity Framework. Код службы (возвращает список работников): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Вызов службы на клиенте: Код: plaintext 1. 2. 3.
Трассировка WCF-сервиса расшифровала эту ошибку так: "Type 'System.Data.Objects.ObjectSet`1[TestEmployeesService.Models.PersonalInfo]' cannot be serialized. Consider marking it with the DataContractAttribute attribute, and marking all of its members you want serialized with the DataMemberAttribute attribute. If the type is a collection, consider marking it with the CollectionDataContractAttribute. See the Microsoft .NET Framework documentation for other supported types." Но в классе метаданных, к-й был сгенерирован при создании модели все атрибуты и так проставлены: Код: 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. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258.
В чем моя ошибка? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2011, 18:47 |
|
Entity Framework в WCF сервисе
|
|||
---|---|---|---|
#18+
После изменения метода получения данных на этот: Код: plaintext 1. 2. 3. 4. 5. 6. 7.
Но возник вопрос насчет привязки полученных данных к DataForm. Если CurrentItem присвоить значение элемента из полученного списка, то на форме отображаются абсолютно все поля. Как задать порядок отображения полей, скрыть ненужные поля, задать валидацию... Атрибуты из System.ComponentModel.DataAnnotations не действуют. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.06.2011, 12:18 |
|
Entity Framework в WCF сервисе
|
|||
---|---|---|---|
#18+
Посмотрите это пошаговое руководство. http://msdn.microsoft.com/ru-ru/library/ff713719%28v=vs.91%29.aspx там есть и про валидацию, и про то, как указать на датаформ только нужные поля. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.07.2011, 00:54 |
|
Entity Framework в WCF сервисе
|
|||
---|---|---|---|
#18+
X11, В этом руководстве используются domainService, в метаданных проставлены атрибуты System.ComponentModel.DataAnnotations, а как источник данных используется domainDataSource. Я же передаю данные из WCF сервиса (без использования domainService) и полученные данные напрямую привязываю к DataGrid, DataForm и т.д. В моем случае прописывание атрибутов Display, RegularExpression и т.п. в классе, сгенерированном при создании модели просто не действуют (( ... |
|||
:
Нравится:
Не нравится:
|
|||
01.07.2011, 17:00 |
|
Entity Framework в WCF сервисе
|
|||
---|---|---|---|
#18+
Основное отличие WCF RIA services от WCF services как раз и состоит в том, что RIA services ко всему прочему "могут" передавать на клиента в QueryResult некоторые метаданные. Поэтому DataAnnotation в RIA сервисах работает, в просто WCF - нет. Правильным будет создать прокси представление класса (POCO) и пометить его аттрибутами WCF для сериализации. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2011, 11:16 |
|
|
start [/forum/topic.php?fid=21&fpage=50&tid=1442222]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
26ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 128ms |
0 / 0 |