Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
Есть таблица, на ней есть вьюха, чтобы можно было работать с вьюхой как с таблицей написан триггер на INSERT. Проблема в том, что когда в с помощью Linq добавляется таблица во вьюху, то в объекте не появляется его Id а при вставке в таблицу появляется. Вопрос: Как красиво получить Id новой записи из вьюхи Если нужно, вот код триггера: Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2010, 12:58 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
Заложите логику триггера в метод с контекстом. Триггер - убрать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2010, 14:09 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
МСУЗаложите логику триггера в метод с контекстом. Триггер - убрать. Что значит в метод? Если Вы имели ввиду хранимую процедуру, то да это выход, но хотелось бы более красиво сделать. Если вы имели ввиду метод в коде проги, то этого сделать нельзя, доступна только вьюха. Собственно инсерт можно SQL'ем сделать, но хочется раз уж пишешь на Linq, то всё на Linq делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2010, 14:25 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
palich12Что значит в метод? То и значит в метод. Что тут не ясного-то? palich12Если Вы имели ввиду хранимую процедуру, то да это выход Я имел ввиду, отдельный C# код. Хранимая процедура тоже подойдёт. palich12но хотелось бы более красиво сделать. Красиво - это без триггера. palich12Если вы имели ввиду метод в коде проги, то этого сделать нельзя, доступна только вьюха. Тогда Ваша задача не решается. Вы идёте в обход ORM. palich12Собственно инсерт можно SQL'ем сделать, но хочется раз уж пишешь на Linq, то всё на Linq делать. О том и речь. Если юзаете ORM - значит делайте все телодвижения в ней. Триггер - в топку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2010, 14:29 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
МСУ, Хорошо, то есть Вы хотите сказать, что Linq to SQL не умеет использовать SCOPE_IDENTIFITY ?? или во всяком случае не применяет их для вьюх. З.Ы. Причем здесь ORM, есть источник данных, вьюха, есть объект который с ней работает. Причем здесь триггер, его вобще не видно на уровне кода и соответсвенно ORM, он работает только на уровне СУБД и виден только её админу. И.М.Х.О. Если эта проблема не имеет решения без метода или процедуры, то это косяк Linq to SQL, но скорее всего это сделать можно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2010, 14:44 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
palich12Хорошо, то есть Вы хотите сказать, что Linq to SQL не умеет использовать SCOPE_IDENTIFITY ?? Я хочу сказать, что Ваша задача с триггером + Linq To SQL не решается. Не более того. Во всём остальном Вам поможет профайлер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2010, 14:47 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
Параллельное обсуждение идет на http://social.msdn.microsoft.com/Forums/ru-RU/fordataru/thread/9f938e95-eb89-4176-a085-37cac6793cbe из него видно что в целом Linq использует SCOPE_IDENTITY(), но не хочет его использовать в этом конкретном случае, видимо косяк, как там предполагают, в модели БД построенной в Linq. Так что возможно решение есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2010, 14:54 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
Нужно смотреть не обсуждения, а в профайлер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2010, 14:59 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
МСУНужно смотреть не обсуждения, а в профайлер. Profiler посмотрел, запрос в нем выглядит достаточно просто: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2010, 11:53 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
Где же ты, МСУ !? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2010, 11:15 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
Стал реже бывать - бросил курить. Ем никоретто, помогает. Моск должен отдохнуть от умных вопросов. Поэтому пока ударился в питьё кефира по утрам и в холивар на других форумах :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2010, 11:24 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
И так результатом обсуждения в этой теме http://social.msdn.microsoft.com/Forums/ru-RU/fordataru/thread/9f938e95-eb89-4176-a085-37cac6793cbe Стало то, что требуемого результата можно добиться только при помощи хранимых процедур, так что если кто-то столкнулся, то готовьтесь писать хранимки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2010, 11:20 |
|
||
|
Как узнать присвоенный Id только что вставленной записи через тригер спомощью Linq
|
|||
|---|---|---|---|
|
#18+
palich12 Стало то, что требуемого результата можно добиться только при помощи хранимых процедур, так что если кто-то столкнулся, то готовьтесь писать хранимки И правильно. Ибо триггеры - зло. А при правильном подходе к постановке задачи - и реляционная база тоже зло. Вместе с ORM. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2010, 12:57 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=36969734&tid=1350993]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
43ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
| others: | 238ms |
| total: | 402ms |

| 0 / 0 |
