Partager via


Connexions contextuelles et connexions standard - Restrictions

S'applique à : SQL Server

Cette rubrique décrit les restrictions associées au code s’exécutant dans le processus Microsoft SQL Server via des connexions contextuelles et régulières.

Restrictions applicables aux connexions contextuelles

Lorsque vous développez votre application, prenez en considération les restrictions suivantes qui s'appliquent aux connexions contextuelles :

  • Vous ne pouvez avoir qu'une seule connexion contextuelle ouverte à tout moment pour une connexion donnée. Si plusieurs instructions s'exécutent simultanément dans des connexions séparées, chacune d'elles peut obtenir sa propre connexion contextuelle. La restriction n'affecte pas les demandes simultanées à partir de connexions différentes ; elle affecte seulement une demande donnée sur une connexion donnée.

  • Multiple Active Result Sets (MARS) n'est pas pris en charge dans une connexion contextuelle.

  • La classe SqlBulkCopy ne fonctionne pas dans une connexion de contexte.

  • Le traitement par lot des mises à jour dans une connexion contextuelle n'est pas pris en charge

  • SqlNotificationRequest ne peut pas être utilisé avec des commandes qui s’exécutent sur une connexion de contexte.

  • L'annulation des commandes qui s'exécutent contre la connexion contextuelle n'est pas prise en charge. La méthode SqlCommand.Cancel ignore silencieusement la requête.

  • Aucun autre mot clé de chaîne de connexion ne peut être utilisé lorsque vous utilisez « context connection=true ».

  • La propriété SqlConnection.DataSource retourne null si l’chaîne de connexion de SqlConnection est « context connection=true », au lieu du nom de l’instance de SQL Server.

  • La définition de la propriété SqlCommand.CommandTimeout n’a aucun effet lorsque la commande est exécutée sur une connexion de contexte.

Restrictions applicables aux connexions normales

Lorsque vous développez votre application, prenez en considération les restrictions suivantes qui s'appliquent aux connexions normales :

  • L'exécution de commande asynchrone contre des serveurs internes n'est pas prise en charge. L’inclusion de « async=true » dans la chaîne de connexion d’une commande, puis l’exécution de la commande entraîne la levée de System.NotSupportedException. Ce message s’affiche : « Le traitement asynchrone n’est pas pris en charge lors de l’exécution dans le processus SQL Server ».

  • L’objet SqlDependency n’est pas pris en charge.

Voir aussi

Connexion contextuelle