Тип float, длина 32 бита, точность 7 цифр. Хотя он может хранить значения с очень большим или очень маленьким диапазоном (+/- 3,4 * 10 ^ 38 или * 10 ^ -38), он имеет только 7 значащих цифр.
Тип double, длиной 64 бита, имеет больший диапазон (* 10 ^ + / - 308) и точность до 15 цифр.
Тип long double номинально равен 80 битам, хотя для данной пары компилятор / ОС может сохранять его как 12-16 байт для целей выравнивания. Длинный дубль имеет показатель, который просто смехотворно огромен и должен иметь точность до 19 цифр. Microsoft, в своей бесконечной мудрости, ограничивает long double до 8 байтов, так же, как обычный double.
Вообще говоря, просто используйте тип double, когда вам нужно значение / переменная с плавающей запятой. Литеральные значения с плавающей запятой, используемые в выражениях, будут по умолчанию рассматриваться как двойные, а большинство математических функций, возвращающих значения с плавающей запятой, возвращают двойные. Если вы просто используете double, вы избавите себя от многих головных болей и переадресации.
Возможно, запрос еще не передан обработчику (например, вы в BeginRequest
).
В AuthorizeRequest
и AuthenticateRequest
обработчик еще не создан. (Обработчик не должен создаваться, если запрос отклонен.) Следовательно, это свойство имеет значение null.
Почему вы используете Страница
и что вы пытаетесь сделать?
Вы можете попробовать обработать PostMapRequestHandler
, который возникает после того, как он разрешает страницу
и генерирует исключение HttpException
или вызывает Response.End
, если вы решите отклонить запрос .
Однако учтите, что для получения экземпляра обработчика необходимо запустить его конструктор; убедитесь, что он не делает ничего критического или чувствительного.
Каким способом вы получаете доступ к этому свойству?
В IHttpModule.Init
, это будет ноль
. Вам необходимо зарегистрировать обработчики событий в приложении
, полученном в качестве параметра метода Init
, и выполнять там свою работу.