2011-12-12 3 views
2

Странный это. Я ищу области для исследования столько, сколько фактическое решение, но это проблема: На моей странице веб-страницы asp.net я тестирую запрос, который затем применяется некоторая логика, однако, строка запроса, похоже, удаляется из Url. Если я прохожу этотRequest.Querystring пуст

..blah.aspx?blah=123 

то я могу видеть строку запроса в Request.RawUrl не проблема, но когда я прохожу свою правильную строку запроса

..blah.aspx?Id=123 

строки запроса пуст. Фильтрация запросов на IIS отсутствует на уровне сайта или приложения. Где еще это может быть уничтожено? Два часа головы царапин и подсчет ....

Update:

Там нет редиректа, логика в blah.aspx события Pre Init:

protected override void OnPreInit(EventArgs e) 
{ 
    if (!string.IsNullOrEmpty(RequestLEID) || !string.IsNullOrEmpty(RequestLEExternalReference)) 
     DisableNavigationContextCheck = true; 

    base.OnPreInit(e); 
} 

Ломать на этом мероприятии, Я тестирую свойство Request.RawUrl в непосредственном окне

+0

Можете ли вы опубликовать блок кода, где вы передаете и перенаправление на этот адрес, спасибо за ваше время –

ответ

0

Если вы используете sharepoint (например, элемент управления sharepoint) с вашим решением, тогда идентификатор является зарезервированным ключевым словом.

+0

я не использую контроль Sharepoint и строку запрос не фактически ID (это просто например, фактическая строка запроса «LEExternalReference» – OldBoy

0

Nasty. В другом месте нашего кода есть навигационный модуль. Это было обновлено, чтобы использовать RedirectPermanent, который в случае URL-адреса с повторяющимся шаблоном запроса (примечание, а не сам параметр) не отправляет запрос с объектом Request.

RedirectPermanent - это новый метод в asp.net 4.0 и, конечно же, не то, что мы должны использовать здесь.

0

Вы вытаскиваете значение (-ы) из запроса?

var RequestLEExternalReference = Request.QueryString["LEExternalReference"]; 
Смежные вопросы