|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
Скажите пожалуйста, автор using ( EntityConnection conn = new EntityConnection(makeConnectionString(this.login, this.pass)) ) { try { conn.Open(); EntityCommand cmd = conn.CreateCommand(); cmd.CommandText = "Entities.mission"; cmd.CommandType = CommandType.StoredProcedure; using (EntityDataReader read = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { while (read.Read()) { string prop = read["PropertyValue"].ToString(); } } return true; } catch { return false; } } авторALTER PROCEDURE [dbo].[mission] AS BEGIN IF OBJECT_ID('tempdb..#tmp') IS NOT NULL DROP TABLE #tmp CREATE TABLE #tmp( [table_cat] [varchar](50) NULL, [table_schem] [varchar](50) NULL, [table_name] [varchar](50) NULL, [column_name] [varchar](50) NULL, [grantor] [varchar](50) NULL, [grantee] [varchar](50) NULL, [privilege] [varchar](50) NULL, [is_grantable] [varchar](50) NULL ) ON [PRIMARY] INSERT #tmp EXEC sp_column_privileges_ex @table_server = 'sups-sql',@table_catalog ='OAVP' SELECT PropertyValue,[SELECT],[INSERT],[UPDATE] FROM (SELECT b.PropertyValue,a.privilege, CASE WHEN a.is_grantable='YES' THEN 1 ELSE 0 end is_grantable FROM #tmp a LEFT JOIN (SELECT ep.value AS PropertyValue, c.name AS column_name FROM sys.objects o INNER JOIN sys.extended_properties ep ON o.object_id = ep.major_id INNER JOIN sys.schemas s ON o.schema_id = s.schema_id LEFT JOIN syscolumns c ON ep.minor_id = c.colid AND ep.major_id = c.id WHERE o.type IN ('V', 'U', 'P') AND ep.name = 'MS_Description')b ON a.column_name=b.column_name)eee PIVOT (min(is_grantable) FOR privilege IN ([SELECT],[INSERT],[UPDATE])) AS pvt END Хранимая процедура совершенно рабочая, EntityDataReader в нее заходит, но никакого результата не возвращает. Что может быть? Заранее благодарен. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2013, 16:55 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
Может как обычно set nocount on ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2013, 17:19 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
buserМожет как обычно set nocount on ? не помогает... я ща просто убрал set nocount on и return ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2013, 17:22 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
SequentialAccess накой? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2013, 17:39 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
хотя... это пох... :) где-то ошибка :) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2013, 17:42 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
Entities.mission ? [dbo].[mission] ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2013, 17:46 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
buserEntities.mission ? [dbo].[mission] ? не понял.... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2013, 20:12 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
vahbuserEntities.mission ? [dbo].[mission] ? не понял.... Это я туплю :) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2013, 21:52 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
Надеюсь, Вы уже все победили :) Но если нет... тогда избавьтесь от временной таблицы. после чего удалите и импортируйте заново процедуру в модель... Избавиться можно так: sp_column_privileges_ex Можно переписать процедуру так: Код: sql 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.
P.S.: Кроме того... терзают меня смутные сомнения... на счет PropertyValue оно же sys.extended_properties.value имеющее тип sql_variant P.P.S.: А вообще... не стоит нагружать EF несвойственными для него задачами... :) К сожалению не имею студии под рукой... да и возиться лень :) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2013, 23:56 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
buser, можете пояснить, когда и как это сработает? автор if 1 != 1 select cast(null as sql_variant) as PropertyValue , cast(null as bit) as [SELECT] , cast(null as bit) as [INSERT] , cast(null as bit) as [UPDATE] ; ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2013, 08:26 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
все остальное в else... я забыл вставить... думалось... это поможет от SET FMTONLY ON; Но не поможет :) тогда... попробуйте заменить #tmp на переменную @tmp (коли не хотите функцию юзать) и импортировать пр-ру заново У мене нема студии чтоб вам тестик слепить... ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2013, 11:39 |
|
не работает EntityDataReader
|
|||
---|---|---|---|
#18+
buserвсе остальное в else... я забыл вставить... думалось... это поможет от SET FMTONLY ON; Но не поможет :) тогда... попробуйте заменить #tmp на переменную @tmp (коли не хотите функцию юзать) и импортировать пр-ру заново У мене нема студии чтоб вам тестик слепить... если использую напрямую функцию автор SELECT * FROM sys.fn_remote_column_privileges('fjgfyj', 'jhkhf') , то выдает такое сообщение: авторMsg 208, Level 16, State 1, Line 1 Недопустимое имя объекта "sys.fn_remote_column_privileges". ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2013, 14:16 |
|
|
start [/forum/topic.php?fid=20&fpage=139&tid=1403690]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
71ms |
get tp. blocked users: |
2ms |
others: | 321ms |
total: | 484ms |
0 / 0 |