Прежде чем задать этот вопрос, я даже не уверен, что я использую строку запроса (я так бессовестен в этом, что у меня есть является результатом какого-то другого запутанного исследования StackOverFlow). Это параметр, который я передаю из своего средства просмотра отчетов SSRS в мое приложение с помощью гиперссылки. Он работает, и все грандиозно, за исключением того, что я хотел бы сразу очистить его от URL.Я хотел бы очистить свой запрос после использования его на загрузке страницы C#
http://10.155.54.101/Update?CurrencyId=67
И я получаю параметр с этой логикой при загрузке страницы.
if (Request.Params["CurrencyId"] != null)
int CurrencyId = int.parse(Request.Params["CurrencyId"]);
Я успешно захватив эту информацию и заполнение элементов управления ASP.NET с ним, но я хочу, чтобы очистить его из адресной строки теперь, как это задерживается после отправки обновления (постбэк?).
С помощью другого переполнения стека Ответ: Clear QueryString on PostBack, я попытался очистить запрос с помощью следующего кода.
Request.Params.Clear();
Но я получаю коллекцию только для чтения, которая адресована в вопросе переполнения стека выше. Поэтому я пытаюсь использовать System.Reflection, чтобы изменить свойство только для чтения коллекции с помощью следующего кода.
PropertyInfo Isreadonly = typeof(System.Collections.Specialized.NameValueCollection).GetProperty("IsReadOnly", BindingFlags.Instance | BindingFlags.NonPublic);
Isreadonly.SetValue(Request.Params, false, null);
Request.Params.Clear();
Я не получаю ошибку, но ничего не удаляется, так что я не мог быть ссылки на строку запроса должным образом из-за однако чёрта Request.Params работы.
Может ли кто-нибудь подтолкнуть меня в правильном направлении? Мне жаль, что я не знаю, как это сделать.
У вас есть особая причина, почему запрос не приемлем? Есть много веских причин в любом случае. Просто любопытно, и он также может направить ответы здесь. – secretwep
Я буду полностью честен, я пытаюсь устранить ошибку, которую я действительно не понимаю. У меня есть приложение со страницей обновлений, которая обновляет запись в моей базе данных, и она извлекает и обновляет записи. У меня есть отчет SSRS, который имеет гиперссылку на каждой записи, чтобы перейти на мою страницу обновления, и заполняет поля и выпадающие списки данными записей. Но данные полностью устраняются с точки зрения точности (в частности, для многих-многих отношений). Обновления также не публикуются.Я читал другие сообщения, в которых querystring имеет какое-то отношение к их проблемам. – David
Простите меня, вы имеете в виду «вытащил _incompletely_»? Иногда строка запроса является единственным способом получить данные из одного приложения в другое, и это операция GET. Я подозреваю, что проблема кроется в другом месте. У вас есть контроль над обоими приложениями или только один. Более подробная информация в ваших вопросах может помочь вам получить ответ. – secretwep