Domanda

Ci sono implicazioni dell'utilizzo di SQLDependency e LINQ a SQL insieme. O dobbiamo prenderci cura di alcune cose appositamente per farli funzionare correttamente?

Nella nostra applicazione utilizziamo LINQ a SQL come orm e la logica aziendale è nelle procedure memorizzate. La cache memorizziamo l'uscita della SP e crea SQLDependency. Ogni volta che l'uscita della SP Cambia la cache viene invalidata.

Il nostro codice finora stava lavorando bene in Dev, Test e QA, ma recentemente ha smesso di funzionare in QA e i registri suggeriscono che l'errore proviene da SQLDependency.Start (Connstr) che viene eseguito nel file Global.asax nell'applicazione Avvio bloccare.

L'errore è il seguente: Messaggio: quando si utilizza SQLDependency senza fornire un valore Options, SQLDependency.Start () deve essere chiamato prima dell'esecuzione di un comando aggiunto all'istanza SQLDependency.

Ma non capisco che quando SQLDependency.Start () è già eseguito nell'inizio dell'applicazione, perché lancia eccezione successivamente quando gli SPS vengono eseguiti.

Qualcuno può lanciare qualche luce su questo problema?

È stato utile?

Soluzione

Come SQLDEPENDENZA è dipendente dalle autorizzazioni - le autorizzazioni sono cambiate sul server?

(probabilmente non dovrebbero avere - ma possono!)

Altri suggerimenti

Assicurarsi che tutte le autorizzazioni siano impostate correttamente, al di sotto dell'elenco di tutte le autorizzazioni necessarie che ho applicato per renderlo funzionante.

-- 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]
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top