LINQ到SQL和SQLDEDENDENTY
-
18-09-2020 - |
题
在一起使用Sqldepency和Linq到SQL的任何含义。或者我们必须特别照顾一些特殊的事情,使他们正常工作吗?
在我们的应用程序中,我们正在使用LINQ到SQL,因为ORM和Business Logic处于存储过程中。我们缓存了SPS的输出并创建了SQLDependency。每当SPS的输出更改缓存时都会失效。
我们的代码到目前为止在DEV,测试和QA中工作正常,但最近它在QA中停止工作,日志表明错误来自SQLDEDENDENT.START(CONNST)在Application Start中在Global.asax文件中执行的堵塞。
错误如下: 消息:在使用sqldependency时不提供选项值,必须在执行添加到SQLDepency实例的命令之前调用sqldependency.start()。
但我不明白,当sqldependency.start()在应用程序中已经执行时,为什么在执行SPS时,它之后它会抛出异常。
任何人都可以在这个问题上抛出一些亮点吗?
解决方案
作为sqldependency是依赖于权限 - 服务器上的权限是否更改?
(他们可能不应该有 - 但他们可能会!)
其他提示
确保正确设置所有权限,下面列出了我应用的所有必要权限,以使其工作。
-- Permissions
GRANT CREATE PROCEDURE to [testUser]
GRANT CREATE QUEUE to [testUser]
GRANT CREATE SERVICE to [testUser]
----
GRANT REFERENCES on CONTRACT::[http://schemas.microsoft.com/SQL/Notifications/PostQueryNotification]
to [testUser]
GRANT RECEIVE ON QueryNotificationErrorsQueue TO [testUser]
GRANT SUBSCRIBE QUERY NOTIFICATIONS TO [testUser]
GRANT CONTROL ON SCHEMA::[dbo] TO [testUser]
GRANT IMPERSONATE ON USER::DBO TO [testUser]
. 不隶属于 StackOverflow