#c# #asp.net #webforms
#c# #asp.net #веб-формы
Вопрос:
У меня есть устаревшее приложение, которое использует перезапись IIS для маскировки определенных базовых структур папок. В Global.asax
файле есть проверка URL-адреса для предотвращения несанкционированного доступа к URL-адресам.
Проблема, с которой я сталкиваюсь, заключается в том, что мне нужно получить доступ к переписанному URL-адресу, поскольку он более последователен, чем фактический путь к файлу, например app/example.aspx
, вводится в браузере, но app/virtualdirectory/folder/anotherfile.aspx
доставляется файл.
При отладке я вижу вызываемый объект this.Request
ClientFilePath
, который содержит /example.aspx
то, что мне нужно, однако, когда я прекращаю отладку, я не могу получить доступ к этому свойству в коде. Эта строка
if(this.Request.ClientFilePath == "/example.aspx")
выдает следующую ошибку:
'HttpRequest' does not contain a definition for 'ClientFilePath' and no accessible extension method 'ClientFilePath' accepting a first argument of type 'HttpRequest' could be found (are you missing a using directive or an assembly reference?)
ClientFilePath
Здесь есть ссылка на это свойство, но оно недоступно.
Какой другой метод я мог бы использовать, чтобы получить относительный путь в соответствии с клиентом asp
? Я не хочу пытаться анализировать значение из строки, поскольку мне нужно сохранить структуру папок для других целей, а путь к файлу изменяется в соответствии с определенными критериями.