J'ai créé un petit site Web ASP.NET. Il utilise sqlcachedependencyCourtier de service SQL Server signalant comme désactivé lorsque j'ai écrit une requête pour l'activer
SQL Server Service Broker pour la base de données en cours n'est pas activé et, par conséquent, les notifications de requête ne sont pas prises en charge. Veuillez activer Service Broker pour cette base de données si vous souhaitez utiliser des notifications.
Description: Une exception non gérée s'est produite lors de l'exécution de la requête Web en cours. Veuillez consulter la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.
Détails d'exception: System.InvalidOperationException: SQL Server Service Broker pour la base de données en cours n'est pas activé et, par conséquent, les notifications de requête ne sont pas prises en charge. Veuillez activer Service Broker pour cette base de données si vous souhaitez utiliser des notifications.
Erreur Source:
Ligne 12: System.Data.SqlClient.SqlDependency.Start (connString);
Ceci est la ligne erronée dans mon global.asax.
Cependant, dans le serveur SQL (2005), j'ENABLED courtier de service comme si (je me connecte et exécuter le service SQL Server lorsque je déboguer mon site):
ALTER DATABASE mynewdatabase SET ENABLE_BROKER avec rollback immédiate
Et ce fut un succès.
Qu'est-ce qui me manque? J'essaye d'employer la dépendance de mise en cache de SQL et ai suivi toutes les procédures.
Merci
Redémarrez le pool d'applications après la ENABLE_BROKER. Assurez-vous que connString transmis à Start fait référence à "mynewdatabase" comme catalogue initial. –
Que voulez-vous dire par catalogue initial? C'est tout ce que je ne comprends pas. En ce moment, ce nom est remplacé par le nom de mon db. – dotnetdev
Catalogue initial: le 'catalogue initial' sur la chaîne de connexion. http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring.aspx. Peut-être aussi 'Base de données'. –