Ограничения обычных и контекстных соединений

В этом разделе содержатся сведения об ограничениях, связанных с кодом, выполняемым в процессе Microsoft SQL Server через контекстные и обычные соединения.

Ограничения контекстных соединений

При проектировании приложения учитывайте следующие ограничения, которые применяются к контекстным соединениям.

  • В определенное время для заданного соединения может существовать только одно открытое контекстное соединение. Если имеется несколько инструкций, параллельно выполняемых в отдельных соединениях, каждая из них может иметь собственное контекстное соединение. Ограничение не влияет на параллельные запросы из различных соединений, оно влияет только на конкретный запрос в отдельном соединении.

  • Режим MARS не поддерживается в контекстных соединениях.

  • Класс SqlBulkCopy не работает в контекстных соединениях.

  • Пакетное обновление не поддерживается в контекстных соединениях.

  • SqlNotificationRequest нельзя использовать с командами, применяемыми в контекстном соединении.

  • Отмена команд, применяемых в контекстном соединении, не поддерживается. Метод SqlCommand.Cancel не учитывает запрос, не сообщая об этом.

  • Никакие другие ключевые слова строки соединения не могут использоваться при использовании «context connection=true».

  • Свойство SqlConnection.DataSource возвращает вместо имени экземпляра SQL Server значение NULL, если строка соединения для SqlConnection равна «context connection=true».

  • Установка свойства SqlCommand.CommandTimeout не имеет значения, если команда выполняется в контекстном соединении.

Ограничения обычных соединений

При проектировании приложения учитывайте следующие ограничения, которые применяются к обычным соединениям.

  • Асинхронное применение команд к внутренним серверам не поддерживается. Если в строке соединения содержится «async=true», по при последующем выполнении команды возникает исключение System.NotSupportedException. Отображается сообщение: «Асинхронная обработка не поддерживается при выполнении в процессе SQL Server».

  • Объект SqlDependency не поддерживается.

См. также

Основные понятия

Контекстное соединение