|
|
|
Перехват sql запроса, который генерится Entity Framework
|
|||
|---|---|---|---|
|
#18+
Извините, а кто-нить знает как можно перехватить sql-запрос, который генерирует Entity Framework? Т.е допустим вызываем метод SaveChanges(), у нас EF генерит sql запрос и запускает его для нашей БД. Необходимо, чтобы EF ничего не предпринимала в БД, а лишь выдала запрос, который намеревалась сделать =) Если уже кто-нибудь пробовал так извращаться над Entity, выложите плиз код =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2009, 17:10 |
|
||
|
Перехват sql запроса, который генерится Entity Framework
|
|||
|---|---|---|---|
|
#18+
SaveChanges(false) вот как sql-код вывести не в курсе. Возможно что и никак. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2009, 19:07 |
|
||
|
Перехват sql запроса, который генерится Entity Framework
|
|||
|---|---|---|---|
|
#18+
Спасибо за ссылку =) На этом же сайте нашел статейку про валидацию данных перед сохранением . Через ObjectStateManager оказалось можно выдернуть все объекты, которые были подвержены изменениям (удаление, обновление, удаление), но пока не нашел как выдернуть sql запрос на совершение этих изменений. Далее с другой стороны нашел, как можно выдернуть sql-запрос из linq-запроса. Получилось что-то типа: var org = from c in EF.zakazhik where c.OID == "000000000200" select new { Orgs = c.Org, c.OID }; ObjectQuery oq = (ObjectQuery)org; //Предварительно подключаем System.Data.Objects Жалко, что все это еще не решает моей проблемы ( нужно выдирать sql-запрос на любые изменения в базе... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2009, 10:44 |
|
||
|
Перехват sql запроса, который генерится Entity Framework
|
|||
|---|---|---|---|
|
#18+
Хех, представляете оказывается это возможно. Вычитал в обсуждении на http://social.msdn.microsoft.com/Forums/en-US/adodotnetentityframework/thread/2a50ffd2-ed73-411d-82bc-c9c564623cb4/ Дополнительный класс: Код: 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. Перед сохранением CustomExtensions.ToTraceString(<ваш контекст>) будет выдавать итоговый sql-запрос ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2009, 12:19 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=36276403&tid=1351620]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
140ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 448ms |

| 0 / 0 |
