Блокировки между едиными запросами могут произойти, поскольку они блокируют единственные строки, не всю таблицу:
запрос на обновление получает блокировку обновления на нескольких строках в таблице, и запрос Select добирается, чтение соединяют некоторые другие строки в таблице. Запрос на обновление тогда пытается получить блокировку обновления на строках, которые читаются заблокированные, и запрос Select пытается добраться, чтение соединяют строки, которые являются заблокированным обновлением.
Это может стать еще более сложным с блокировками escalading, т.е. база данных решает, что существует слишком много единственных строк, заблокированных транзакцией так, чтобы это было наращено в блокировку раздела таблицы или всей таблицы. Это означает, что блокировка может влиять на строки, которые непосредственно не вовлечены в запрос.
Вы можете обратиться к свойству Request.IsSecureConnection
в Класс HttpRequest
. Для получения полной ссылки за пределами страницы, пользовательского элемента управления или чего-либо подобного используйте HttpContext.Current.Request.IsSecureConnection
.
Использование - HttpContext.Current.Request.IsSecureConnection
Альтернативно:
Request.ServerVariables["SERVER_PROTOCOL"];